{
//cls : 'key',
id:'noticeType',
xtype : 'combo',
fieldLabel : '通知类型',
labelSeparator : ':',
//value : '',
multiSelect : false,
//name: 'meetingType',
hiddenName : 'meetingClass',
valueField : 'dictdataCode',//'dictdataCode',
displayField : 'dictdataName',//'dictdataName',
store : meetingTypeDs,
/*new Ext.data.SimpleStore({
fields:['name','value'],
data:[['全部','0'],['会议','meeting001'],['其它','meeting002']]
}),*/
//typeAhead : true,
mode : 'local',// default: remote
triggerAction : 'all',
emptyText : '请选择数据项',
//selectOnFocus : true,
readOnly : false,
//editable : false,
anchor : '96%',
listeners:{
blur : function(combo){
var value= Ext.getDom('noticeType').value;
//根据手动输入值查询是否有匹配的数据
var result = meetingTypeDs.query('dictdataName',value,true,true);
if(result.getCount()!=1){//store没有匹配的数据,则按输入值查询
combo.setValue(value);
}
}
}
//lazyInit : true
}
重点说说自定义选项的添加和可编辑状态下的值同步的问题
1、可编辑状态下的值同步
有时候下拉择可能也要可编辑,即除了可选的那几个值,也可提供用户输入任意值的功能
以上代码即是这一需求的实现。思路是:
(1)为combo加上id值,这样可以获得可输入控件,是数据同步的前提
(2)将用户输入的值作为条件去store里查询,结果的数量为1表示store里有一条与用户输入的值一样,否则将用户输入的值赋给combo
(3)以上工作要在监听里执行
2、添加自定义的选择项
ext的combox很不友好,没有空值的选项。只能自己加上了
meetingTypeDs = new Ext.data.JsonStore({
url:'dict_getDictData.action?dictCode=meeting_type',
totalProperty : 'totalSize',
id : 'id',
root : 'list',
remoteSort:true,
fields:["dictdataCode","dictdataName"], //
listeners:{
//向已有数据中插入一条新的数据
load : function(store, records, options ){
var data = {'dictdataCode':'','dictdataName':'全部类型'};
var rs = [new Ext.data.Record(data)];
store.insert(0,rs);
}
}
});
最后抱怨一下ext的combox的不足:
1、不能方便的加上自己的缺省选择项,对store的要求太多。
2、提供了一量选择一项便再也不能恢复到始状态。提供了emptyText这一属性,却不太好用,实际应用中,我们经常需要恢复到空值状态,也就是什么都不先的状态。目前2.3版的ext还无法提供
分享到:
相关推荐
ExtJS4下拉树组件 ExtJS4下拉树组件
下拉框中要添加一项 ’所有‘ ,由于是combox无法使用option
Extjs4下拉菜单中用Grid显示,有单选,和多选两个控件,完美通用代码控件,绝对让你好用,值得收藏^-^
extjs下拉树,在网上找了很多,发现bug实在让人头大,干脆自己写了个下拉树组件,功能全面
在实践中总结的文档,适用于Ext的初学人群!
Extjs 下拉列表
Extjs 下拉树 下拉多选树 支持多选 全选/全不选 下拉多选框
网上搜索了许久未找到...Extjs4.2 带复选框的下拉树,解决了向下勾选子节点、向上勾选父节点,正选反选获取值等问题,勾选的节点显示displayfield值直接显示在下拉文本框中。需要引用ext-all.js和ext-all-neptune.css
该资源主要展示了在Extjs6中Combobox控件实现下拉选择多个数据的功能
extjs实现的下拉树的核心代码,包括js,jsp,对有需要的同仁提供参考与学习之用
Extjs4下拉树菜单 ComboBoxTree 支持单选和多选并且支持展开选中指定节点的通用控件 在项目中已经成熟运用 值得收藏和运用
ExtJs4.2没有直接提供下拉树这个组件,但是有例子可以用,文件位置:ext-4.2.1.883\examples\ux\TreePicker.js 但是它有点小毛病吧:默认显示了根节点;达到最小高度时再展开节点,高度不能自动调整。 所以我做了一...
通过这个观看视频会让你很快的了解到extjs,并且能够很快的进入ext的使用
自定义下拉树,你懂的,内附图和前后台源代码
保存提交代码,extjs4.0 // 重置 和 保存 按钮. buttons: [{ text: '重置', handler: function() { this.up('form').getForm().reset(); } }, { text: '保存', /*formBind: true, //only enabled once the ...
ExtJs3下拉树 分两种方式调用:第一种: xtype : 'combotree', name : 'dm', fieldLabel : 'dm', tree : this.ct this.ct = new Ext.tree.TreePanel({ autoScroll : true, height : 250, border : false, ...
extjs下拉树
xtype : 'jxcombo' //配置项 jxValueField:要获取值得字段名称,默认null //公共方法 getJXValue():返回自定义字段的值,如果没有自定义字段,则等价Ext.form.Combo类的getValue()方法
此处做一个extjs下拉列,以备后用。该项目中包涵使用说明,将项目下载下来按照使用说明即可。 本人也是extjs的初学者,有不足之处希望使用该资源的兄弟姐妹指出,希望对大家有帮助。
下拉(条件)搜索实例extjs4.2(亲测可用).在前辈的基础上增加了php后台数据的调取整合和下拉搜索的联动