在 ExtJS 官方网的论坛上找到的代码,稍稍改动之后如下:
Comments Feed: http://www6.webng.com/seaboat/feed.asp?q=comment&id=729
/*
* 带清空功能的 ComboBox
*/
Ext.form.ClearableComboBox = Ext.extend(Ext.form.ComboBox, {
initComponent: function(){
Ext.form.ClearableComboBox.superclass.initComponent.call(this);
this.addEvents('clear');
this.triggerConfig = {
tag:'span',
cls:'x-form-twin-triggers',
style:'padding-right:2px',
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"}
]
};
},
getTrigger: function(index){
return this.triggers[index];
},
initTrigger: function(){
var ts = this.trigger.select('.x-form-trigger', true);
this.wrap.setStyle('overflow', 'hidden');
var triggerField = this;
ts.each(function(t, all, index){
t.hide = function(){
var w = triggerField.wrap.getWidth();
this.dom.style.display = 'none';
triggerField.el.setWidth(w-triggerField.trigger.getWidth());
};
t.show = function(){
var w = triggerField.wrap.getWidth();
this.dom.style.display = '';
triggerField.el.setWidth(w-triggerField.trigger.getWidth());
};
var triggerIndex = 'Trigger'+(index+1);
if(this['hide'+triggerIndex]){
t.dom.style.display = 'none';
}
t.on("click", this['on'+triggerIndex+'Click'], this, {preventDefault:true});
t.addClassOnOver('x-form-trigger-over');
t.addClassOnClick('x-form-trigger-click');
}, this);
this.triggers = ts.elements;
},
onTrigger1Click: function() {this.onTriggerClick()},
onTrigger2Click: function() {this.clearValue(); this.fireEvent('clear', this)}
});
* 带清空功能的 ComboBox
*/
Ext.form.ClearableComboBox = Ext.extend(Ext.form.ComboBox, {
initComponent: function(){
Ext.form.ClearableComboBox.superclass.initComponent.call(this);
this.addEvents('clear');
this.triggerConfig = {
tag:'span',
cls:'x-form-twin-triggers',
style:'padding-right:2px',
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"}
]
};
},
getTrigger: function(index){
return this.triggers[index];
},
initTrigger: function(){
var ts = this.trigger.select('.x-form-trigger', true);
this.wrap.setStyle('overflow', 'hidden');
var triggerField = this;
ts.each(function(t, all, index){
t.hide = function(){
var w = triggerField.wrap.getWidth();
this.dom.style.display = 'none';
triggerField.el.setWidth(w-triggerField.trigger.getWidth());
};
t.show = function(){
var w = triggerField.wrap.getWidth();
this.dom.style.display = '';
triggerField.el.setWidth(w-triggerField.trigger.getWidth());
};
var triggerIndex = 'Trigger'+(index+1);
if(this['hide'+triggerIndex]){
t.dom.style.display = 'none';
}
t.on("click", this['on'+triggerIndex+'Click'], this, {preventDefault:true});
t.addClassOnOver('x-form-trigger-over');
t.addClassOnClick('x-form-trigger-click');
}, this);
this.triggers = ts.elements;
},
onTrigger1Click: function() {this.onTriggerClick()},
onTrigger2Click: function() {this.clearValue(); this.fireEvent('clear', this)}
});
Comments Feed: http://www6.webng.com/seaboat/feed.asp?q=comment&id=729
View Mode: Show All |
Comments: 1 |
Trackbacks: 0 | Toggle Order | Views: 354
[ 2009-10-22 14:34:36 ]
However I am concerned about Homer I think he needs to go to the doctirs before his eyes fall out! ,






