Extjs에서 Combobobox 표시 값 및 실제 값 할당 문제 해결
인터넷에서 찾아보니 setvalue ()/set Raw Value (Mixed value) 로 각각 완성할 수 있다고 했는데 사실 한 번 해봤지만 성공하지 못했어요.API에 설명되어 있습니다.
setRawValue( Mixed value ) : Mixed
DOM 。 setValu...
DOM 。 setValue。Sets the underlying DOM field's value directly, bypassing validation. To set the value with validation see setValue.
만약 내가 잘못 이해하지 않았다면 여기는 검증 값을 건너뛰는 데 쓰였을 것이다. 즉, 검증이 통과할 수 없는 값이 이 함수를 통해 설정될 수 있기 때문이다.(이곳에서 왜 Ext 공식이 이런 함수를 주었는지 모르겠다. 검증할 수 없는 것인데 왜 값을 부여해야 하는지 모르겠다.
Firebug 분석을 사용하여 생성된 페이지를 분석할 때 실제 값은 숨겨진 input로 배치된 것을 발견합니다.그렇다면 Ext.get () 방법으로 해 보겠습니다. 결국 Ext.get () 과form을 사용할 수 있다는 것을 발견했습니다.getForm().findField () 는 각각 값을 부여하고 Ext.get () 을 고려하여 새로운 메모리 손실을 초래할 수 있으므로 Ext.fly () 로 대체합니다. 최종 코드는 다음과 같습니다.
win.form.getForm().findField('assistInfo.pid.id')
.setValue(config.curr.node.text);
Ext.fly('assistInfo.pid.id').dom.value=config.curr.node.id;
2010-10-08의 최신 수정은 상기 방법에 문제가 있습니다.cbx가 초점을 얻고 수정되지 않았을 때, 떠날 때,displayField의 값을valueField에 채우면 시스템 오류가 발생합니다.비교적 좋은 해결 방법은 Ext.data를 사용하는 것이다.Record.create ({}) 는combobo의 데이터 대상을 구축하고, 이 값을combobo의 데이터 스토어에 채우고, 마지막으로setvalue를 호출하면combobobox의 초기 값 문제를 완벽하게 해결할 수 있습니다.
Ext.getCmp('userid').setRawValue(otherName);
Ext.getCmp('userid').setValue(otherId);
name id
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.