ExtJS 控件扩展: 带清空功能的 ComboBox - ○白子○ 的Blog
Selected Content

ExtJS 控件扩展: 带清空功能的 ComboBox

[ 2009-03-06 03:04:14 | Author: seaboat ]
Font Size: Large | Medium | Small
在 ExtJS 官方网的论坛上找到的代码,稍稍改动之后如下:
/*
 * 带清空功能的 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 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
Quote Stinky32*
[ 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! ,

Post Comment
Smilies
[smile] [confused] [cool] [cry]
[eek] [angry] [wink] [sweat]
[lol] [stun] [razz] [redface]
[rolleyes] [sad] [yes] [no]
[heart] [star] [music] [idea]
Enable UBB Codes
Auto Convert URL
Show Smilies
Hidden Comment
Username:   Password: