/**
* 定义store,在baseParams中定义参数,请求服务端数据,返回数据源
*/
var modelsStore = new Ext.data.JsonStore({
url : 'cars-makes-models.action',
baseParams : {
cmd : 'models'
},
root : 'models',
fields : ['id', 'name']
});
/**
*
* makeCombo 父类combox 控制自身store的加载, 以及modelStore的加载 通过select触发事件,去级联modelStore
*/
var MakeCombo = {
xtype : 'combo',
store : makestore,
displayField : 'name',
valueField : 'id',
typeAhead : true,
editable : false,
mode : 'remote',
forceSelection : true,
triggerAction : 'all',
fieldLabel : 'Make',
emptyText : 'Select a make...',
selectOnFocus : true,
anchor : '95%',
store : new Ext.data.JsonStore({
url : 'cars-makes-models.action',
baseParams : {
cmd : 'makes'
},
root : 'makes',
fields : ['id', 'name']
}),
listeners : {
'select' : function(cmb, rec, idx) {
// 得到models-combo组件
modelsCbx = Ext.getCmp('models-combo');
// 清除数据
modelsCbx.clearValue();
// 通过传入自身参数使modelStore重新加载
modelsCbx.store.load({
params : {
'makeId' : this.getValue()
}
});
// 启用组件
modelsCbx.enable();
}
}
};
/**
* 子类combox 注意这里的mode是定义为local(按常理是remote) 原因是不让这个组件在没有级联的关系下加载数据
*/
var ModelCombo = {
xtype : 'combo',
id : 'models-combo',
store : modelsStore,
displayField : 'name',
valueField : 'id',
typeAhead : true,
editable : false,
mode : 'local',
forceSelection : true,
triggerAction : 'all',
fieldLabel : 'Model',
emptyText : 'Select a model...',
selectOnFocus : true,
disabled : true,
anchor : '95%'
};
/**
* 初始化面板
*/
Ext.onReady(function() {
var newCarForm = new Ext.FormPanel({
frame : true,
title : 'Car Reviews',
bodyStyle : 'padding:5px',
width : 420,
id : 'make-selector-frm',
url : 'new-car.php',
items : [MakeCombo, ModelCombo]
});
newCarForm.render(document.body);
});
分享到:
相关推荐
在本文中,我们将深入探讨EasyUI的Datagrid中Editor与Combobox的级联应用,这是一种在Web开发中实现数据交互和界面控制的强大技术。EasyUI是一个基于jQuery的UI框架,它提供了一系列轻量级、易于使用的组件,如...
标题中的"Ext combo 下拉框级联"指的是在Ext JS框架中使用Combobox组件创建级联下拉框的功能。Ext JS是一个强大的JavaScript UI库,提供了丰富的组件模型和数据绑定机制,用于构建复杂的Web应用程序。 首先,我们...
级联ComboBox意味着两个或多个ComboBox之间存在关联,当用户在一个ComboBox中做出选择时,它会更新另一个ComboBox的选项,展示与当前选择相关的数据。 实现ExtJS ComboBox级联的关键在于理解其数据绑定和事件监听...
1. **创建一个新的类**:定义一个继承自Ext.form.ComboBox的新类,添加必要的配置和方法来支持多选。 2. **配置store**:设置一个数据存储(Store)来保存可选项,确保每个记录都有一个表示选中状态的字段,如`...
要实现单选功能,ComboBoxTree可能使用了Ext.selection.Model类,通过配置singleSelect选项来限制用户只能选择一个节点。单击一个节点时,其他已选中的节点将被自动取消选中。这在需要用户做出唯一选择的场景中非常...
Ext.create('Ext.form.field.ComboBox', { fieldLabel: '选择部门', store: Ext.create('Ext.data.TreeStore', { model: 'Department', root: { text: '所有部门', expanded: true, children: [ /* ... *...
在“EXT 实现省份--城市--地区--级连”这个主题中,我们将探讨EXT如何用来实现多级联动选择的功能,如省份、城市、地区之间的级联选择。 在Web应用中,用户可能需要选择一个地理位置,通常是从国家到省份,再到城市...
"GXT Cascade ComboBox Samples"指的是使用GXT库中的级联下拉框(Cascade ComboBox)组件进行的示例代码。 级联下拉框是一种特殊的控件,它允许用户从一系列相关的选项中进行选择,通常这些选项是层次化的。例如,...
4.4.7. 露一小手,组合上面所知,省市县三级级联。哈哈~ 4.4.7.1. 先做一个模拟的,所有数据都在本地 4.4.7.2. 再做一个有后台的,需要放在服务器上咯 4.5. 把form里的那些控件全部拿出来看看 4.6. form提交数据的...
4.4.7. 露一小手,组合上面所知,省市县三级级联。哈哈~ 4.4.7.1. 先做一个模拟的,所有数据都在本地 4.4.7.2. 再做一个有后台的,需要放在服务器上咯 4.5. 把form里的那些控件全部拿出来看看 4.6. form提交数据的...
对于ComboBox可没这么简单… 版本 Ext JS Library 3.0.0 正文 一、问题 1.1 截图 1.2 代码 1.2.1 前端代码 代码如下: [removed] // function ExtStore(url) { return new Ext.data.Store({ proxy: new Ext.data....
1. **EXT.NET的使用**:EXT.NET提供了多种组件,如GridPanel(数据网格)、FormPanel(表单)、ComboBox(下拉框)等,以及事件处理和数据绑定机制,用于创建丰富的客户端交互。 2. **ASP.NET MVC框架**:理解路由...
1、修复combobox在级联操作时,传递的swd参数值为null,而不是选中值。 2、datagrid的addEventListener 方法增加对事件onExpandRow和onCollapseRow的控制。 3、tree增加自定义属性 attributes,用于简单数据加载时,...
很多网友在问,Extjs4.0 ComboBox如何实现,好在之前用3.x实现过一个三级联动,如今用Extjs4.0来实现同样的联动效果。其中注意的一点就是,3.x中的model:’local’在Extjs4.0中用queryMode: ‘local’来表示,而且在...
var provinceCombo = Ext.create('Ext.form.field.ComboBox', { fieldLabel: '省份', store: provinceStore, queryMode: 'local', displayField: 'name', valueField: 'id', triggerAction: 'all', ...