【发布时间】:2011-02-04 20:54:53
【问题描述】:
在应用程序中现有的 ext js 代码中,一个组合框被这样覆盖:
Ext.override(Ext.form.ComboBox, {
nullable:true
,initComponent: Ext.form.ComboBox.prototype.initComponent.createSequence(function(){
this.triggerConfig = {
tag:'span', cls:'x-form-twin-triggers', cn:[
{tag: "img", src: Ext.BLANK_IMAGE_URL, cls:'x-form-trigger '},
{tag: "img", src: Ext.BLANK_IMAGE_URL, cls:'x-form-trigger x-form-clear-trigger'}
]};
this.addEvents(
'clear',
'change'
);
}})
为什么要定义:
this.addEvents(
'clear',
'change'
);
'change' 已经被定义为 extjs 中组合框的事件。 'clear' 没有在 extjs 中定义。
编辑:也许对实际示例的引用会有所帮助:就是这样。 http://www.sencha.com/forum/showthread.php?84300-Nullable-ComboBox&p=404222&langid=14
【问题讨论】:
-
确实如此。定义
change有点奇怪,因为无论如何它都是由feomExt.form.Field继承的。至于clear,也许它正在其他地方使用。 JavaScript 为您提供了传播定义的令人讨厌的可能性,因此它可能并不明显。
标签: extjs