Ext 폼의combobobox 디스플레이 값 메우기 문제

1518 단어 ext
이유: Ext 기반 폼 (form) 에서 Combobobox 구성 요소를 사용하고 제출할 때hiddenName 방식을 사용하며 백그라운드에서 선택한 valueField 값을 수신하여 저장 기능을 실현합니다.
문제: 수정 페이지에서combobobox에 값을 다시 채워야 하지만,combobox는displayField 값이 아니라valueField 값을 표시합니다.해결 방법은combobox의store에listener를 추가하여 디스플레이 값을 메우는 것입니다.
문제 해결에 추가된 코드:

listeners: {  
      load: function() {  
           typeCombo.setValue(typeCombo.getValue());  
      }  
}
 
전체 코드:
         
 var typeStore = new Ext.data.JsonStore({
		    url: 'systemParmsProvider.do?type=DATA_TABLE_TYPE_LIST',
		    fields: ['codeValue', 'codeLabel'],
		    listeners: {  
				load: function() {  
					typeCombo.setValue(typeCombo.getValue());  
				}  
			}  
		});
		typeStore.setDefaultSort('codeValue');
			
	    var typeCombo = new Ext.form.ComboBox({
	        store: typeStore,
			fieldLabel: ' ',
	        displayField: 'codeLabel',
	        valueField: 'codeValue',
	       	name: 'type',
	       	hiddenName: 'type',
	        typeAhead: true,
	        emptyText:' ...',
	        mode: 'local',
	        triggerAction: 'all',
	        selectOnFocus: true,
	        editable: false,
		    anchor:'95%'
	    });
	    typeStore.load();

여러분에게 도움이 되었으면 좋겠습니다.

좋은 웹페이지 즐겨찾기