2012-07-03 3 views
1

실제로 구성 요소의 addAfter 또는 insertAfter를 사용할 수 있습니까?Sencha Touch - addAfter/insertAfter 구성 요소

.add()에 대한 내용은 컨테이너의 끝 부분에 던져 넣으려고하지만 필드의 양식을 반복하면서 각각의 오류를 표시합니다. 그래서 이것들 뒤에 새로운 컴포넌트를 추가해야합니다.

이러한 구성 요소의 실제 요소에서만 가능할 것으로 보입니다. 뭔가 같은 :

errorElement = Ext.create('Ext.Container', { 
    //stuff 
}); 
errorElement.element.insertAfter(field.element); 

이 괜찮 그것을 잘 보이지만 다음과 같은 처리를 할 경우 돔 물건이고, 구성 요소가 존재하지 않는 것 :

Ext.Viewport.getActiveItem().query('panel'); // [] 
Ext.ComponentQuery.query('panel'); // Ext.apply.create.Class 

말하지 마십시오 내가이 일에 대해 물어 보는 유일한 사람이다. 문서의 어느 부분에도 강조 표시되어 있지 않은가?

답변

1

Container.insert() 방법을 사용할 수 있습니다 Inserts a Component into this Container at a specified index.

그러나 구성 요소 (요소가 아닌 구성 요소)를 삽입하는 것은 좋은 생각처럼 들리지 않습니다. 기본 양식 필드에는 이미 내부에 오류를 표시하는 요소가 있으며 CSS를 통해 모양을 조정할 수 있습니다.

+0

감사합니다. 양식 필드에서 오류를 표시 할 수있는 문서에 대해서는 아무 것도 볼 수 없습니다. DOM 구조 내에서 표시되는 오류 메시지에 대해서는 아무 것도 표시되지 않습니다. 오류 처리가 양식이 아닌 모델에 연결될 때 이것이 어떻게 작동합니까? 내 모델에서 유효성 검사를 실행하고 필드 뒤에 오류 DataView 넣고 –

+0

양식 항목에 대해 어떤 구성 요소를 사용합니까? 약간의 코드 예제를 제공 할 수 있습니까? –

+0

[Ext.form.MessageTargets] (http://docs.sencha.com/ext-js/3-4/source/Field.html) 및 공용 [markInvalid()] (http : //)의 정의를 참조하십시오. docs.sencha.com/ext-js/3-4/#!/api/Ext.form.Field-method-markInvalid) Ext.form.field의 메소드 –