COMBOX 연동 디스플레이 텍스트 설정 정보

1231 단어 ext
오늘 백그라운드에서 데이터를 반환하여combox에 표시하는 문제에 부딪혔습니다. 인터넷과 친구의 도움을 통해 지도를 한 셈입니다.두 가지 방법이 있는데,
하나는 ext 자체 해결 방법입니다.
combox에 hiddenName:'XXX'와'valueField:'XXX'를 설정합니다. 이 두 값은 setValue(실제 값)와 setRowValue(표시 값)를 일치시킵니다.
 
또 다른 방법은combox의sevValue 방법을 다시 불러오는 것입니다. 코드는 다음과 같습니다.
Ext.override(Ext.form.ComboBox,{
	setValue : function(v, _text){
        		var text = v;
       		 if(this.valueField){
            			var r = this.findRecord(this.valueField, v);
           			 if(r){
               				 text = r.data[this.displayField];
            			}else if(this.valueNotFoundText !== undefined){
               				 text = this.valueNotFoundText;
           			 }
        		}
        
       		 if( arguments.length >= 2 )
        			text = _text;
        
        		this.lastSelectionText = text;
       		 if(this.hiddenField){
            			this.hiddenField.value = v;
        		}
        		Ext.form.ComboBox.superclass.setValue.call(this, text);
        		this.value = v;
    }
});

주석: setValue(실제 값, 표시 값);

좋은 웹페이지 즐겨찾기