远程数据源Combobox
Ext.define('bookInfo', {
extend: 'Ext.data.Model',//新类继承自model
fields: [{ name: 'bookName' }]//利用fields来定义数据模型的字段,这里利用name为数据模型定义了两个字段名
//city和postcode。也可以直接‘city’在fields为模型定义字段名
});
var postStore = Ext.create('Ext.data.Store', {//store数据集即是缓存
model: 'bookInfo',//将数据集store与数据模型连接起来,即将postStore作为postModel的缓存
proxy: {
type:'ajax',
url:''
}
});
// Ext.Loader.setConfig({ enabled: true });
Ext.QuickTips.init();
Ext.create('Ext.form.Panel', {//起初没有运行成功,各种问题就是将panel写成了pannel。
title:'本地数据源组合框',
renderTo: Ext.getBody(),
frame: true,
width: 300,
labelWidth: 50,
labelAlign: 'left',
labelSeparator: ':',
items: [
{
xtype: 'combo',//定义表单项为组合框。combo
fieldLabel: '邮政编码',
listConfig: {
// deferEmptyText:false,
emptyText: '未找到匹配值', //当值不在列表时的提示信息,使用firebug在EXT官网API下输入不存在的城市时可以显示,但在VS下运行无法显示
maxHeight: 100, //设置下拉列表的最大高度为100像素,设置小得话会导致下拉表中显示的城市少
},
name: 'postcode',//Ext。form。field。Base(表单字段基类,之前用到的什么文本输入框等都是起派生的)的配置项name表示表单项名称。
//triggerAction: 'query',//默认为all,执行allQuery配置项,即单击触发按钮时发送查询combo的下拉列表绑定的所有数据源,并将数据返回
//因此点击按钮时可以看到一列的城市列表,若是设置为query,只能查到输入框里的一条城市信息
store:postStore, //表示使用哪个数据集。这里数据集名称是没有‘’的。刚运行时加了‘’导致程序报很大的错。postStore是已经定义的变量,不用加‘’
displayField: 'city',//组合框中显示的内容
//valueField: 'postcode',
queryMode: 'local',//如果数据集就在本地,即是就在本页面,不用向服务器请求时,将queryMode设置为local本地
forceSelection: true,//强制使输入字段内的值必须是列表中的一个
typeAhead: true,//输入第一个字时,即跳出列表中以其开头的词语。
value: '深圳',//字段值默认值。也可写postcode,同时要valueField=‘postcode’
//deferEmptyText: false
}]
});
extend: 'Ext.data.Model',//新类继承自model
fields: [{ name: 'bookName' }]//利用fields来定义数据模型的字段,这里利用name为数据模型定义了两个字段名
//city和postcode。也可以直接‘city’在fields为模型定义字段名
});
var postStore = Ext.create('Ext.data.Store', {//store数据集即是缓存
model: 'bookInfo',//将数据集store与数据模型连接起来,即将postStore作为postModel的缓存
proxy: {
type:'ajax',
url:''
}
});
// Ext.Loader.setConfig({ enabled: true });
Ext.QuickTips.init();
Ext.create('Ext.form.Panel', {//起初没有运行成功,各种问题就是将panel写成了pannel。
title:'本地数据源组合框',
renderTo: Ext.getBody(),
frame: true,
width: 300,
labelWidth: 50,
labelAlign: 'left',
labelSeparator: ':',
items: [
{
xtype: 'combo',//定义表单项为组合框。combo
fieldLabel: '邮政编码',
listConfig: {
// deferEmptyText:false,
emptyText: '未找到匹配值', //当值不在列表时的提示信息,使用firebug在EXT官网API下输入不存在的城市时可以显示,但在VS下运行无法显示
maxHeight: 100, //设置下拉列表的最大高度为100像素,设置小得话会导致下拉表中显示的城市少
},
name: 'postcode',//Ext。form。field。Base(表单字段基类,之前用到的什么文本输入框等都是起派生的)的配置项name表示表单项名称。
//triggerAction: 'query',//默认为all,执行allQuery配置项,即单击触发按钮时发送查询combo的下拉列表绑定的所有数据源,并将数据返回
//因此点击按钮时可以看到一列的城市列表,若是设置为query,只能查到输入框里的一条城市信息
store:postStore, //表示使用哪个数据集。这里数据集名称是没有‘’的。刚运行时加了‘’导致程序报很大的错。postStore是已经定义的变量,不用加‘’
displayField: 'city',//组合框中显示的内容
//valueField: 'postcode',
queryMode: 'local',//如果数据集就在本地,即是就在本页面,不用向服务器请求时,将queryMode设置为local本地
forceSelection: true,//强制使输入字段内的值必须是列表中的一个
typeAhead: true,//输入第一个字时,即跳出列表中以其开头的词语。
value: '深圳',//字段值默认值。也可写postcode,同时要valueField=‘postcode’
//deferEmptyText: false
}]
});