EXTJS 里怎么给一个formpanel 加一个监听器(addlistener)监听 form里所有的textfiled的change事件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXTJS 里怎么给一个formpanel 加一个监听器(addlistener)监听 form里所有的textfiled的change事件相关的知识,希望对你有一定的参考价值。
比如说 如下定义的一个formpanel 里有4个textfiled
xtype:'fieldset',id:'exchanginfo1',frame:true,title:'房屋交易基本信息',layout:'column',labelWidth:70,
items:[
columnWidth:.66,layout:'form',items:[
xtype:'textfield',fieldLabel: '房屋坐落',name: 'fmzl',anchor:'98.6%',allowBlank: false,id:'fmzl'
],
columnWidth:.34,layout:'form',items:[
xtype:'textfield',fieldLabel: '房 号',name: 'fh',anchor:'96%',id:'fh',allowBlank: false,
],
columnWidth:.33,layout:'form',items:[
id:'szcs',xtype:'textfield',fieldLabel: '所在层数',name: 'szcs',anchor:'96%'
],
columnWidth:.34,layout:'form',items:[
xtype:'textfield', decimalPrecision :0,fieldLabel: '建成年份',name: 'jcnf',anchor:'96%',id:'jcnf'
],
],
哪个大牛帮我写个 监听事件 “ischange” 判断 4个textfiled 里的内容是不是发生变化(只要有一个发生变化就触发), 由于是新手 写个格式框架给 谢谢
//公用属性
var _txta = anchor: '100%', xtype: 'textfield', allowBlank: false, blankText: '不能为空',
listeners:
change: function(_field, _newVal, _oldVal)
//事件代码
alert('a');
;
var _root = [];
_r = layout: 'column', items: [];
//Ext.applyIf方法将参数2对象的属性添加到参数1对象, 如有同名的属性则不覆盖, Ext.apply方法则是覆盖同名属性. 区别情况使用
_r.items.push(columnWidth: .33, layout: 'form', items:[
Ext.applyIf(fieldLabel: '字段1', name: 'field1', _txta)
]);
//换行
_root.push(_r);
_r = layout: 'column', items: [];
_r.items.push(columnWidth: .33, layout: 'form', items:[
Ext.applyIf(fieldLabel: '字段2', name: 'field2', allowBlank: true, _txta) //不使用默认allowBlank属性
]);
_root.push(_r);
//加feildset
_root = title: '标题', xtype: 'fieldset', collapsed: false, collapsible: true, items: _root;
//使用多语句逐对象添加, 可明显减少代码结构错误
var _form = new Ext.form.FormPanel(
region: 'north',
layout: 'form',
frame: true,
border: false,
height: 215,
labelAlign: 'right',
items: _root
);
也可以在运行时添加事件处理
//容器类findByType方法第二个参数表示是否只查找指定类型, 指定false表示查询指定类型包含指定类型的子类
var _fields = _form.findByType('textfield', false);
for (var i = 0; i < _fields.length; i++)
_fields[i].on('change', function()
//代码
);
本回答被提问者和网友采纳
Qt 怎样给一个部件加上边框啊
比如一个对话框里有三个按钮,在三个外部加上一个边框表示三个是一个整体,用QSpilter好像会有不对称的问题,大神们帮帮忙啊~谢谢啦
参考技术A 用QGroupBox啊 参考技术B 继承自QWidget就有了.以上是关于EXTJS 里怎么给一个formpanel 加一个监听器(addlistener)监听 form里所有的textfiled的change事件的主要内容,如果未能解决你的问题,请参考以下文章
Extjs 在一个窗口中添加formPanel时,打开报错!!