전 extjs4에서 일하고 있습니다. 여러 개의 텍스트 상자, 라디오 버튼 및 기타 요소가있는 양식이 있습니다. 양식을 수정하면됩니다. 사용자가 양식에서 일부 편집을 한 경우 사용자가 변경 한 사항을 저장했는지 확인하기 위해 메시지 상자 창을 표시하려고합니다. 사용자가 수정하지 않고 양식을 닫으면 해당 메시지 상자가 나타나서는 안됩니다.extjs4에서 양식이 수정되었는지 여부를 확인하는 방법
me.getForm().on('dirtychange', function(form, isDirty) {
console.log(form.events);
if(isDirty) {
isChanged=true;
}
else {
isChanged=false;
}
});
그러나 양식이 수정되지 않았더라도 해당 설정은 항상 true로 설정됩니다. 양식이 수정되었는지 여부를 확인하여 확인 메시지 상자를 표시하는 방법.
고맙습니다 나뿐만 시도 \t \t \t (IsDirty 사용) {isChanged = TRUE \t \t; \t \t} 만약 다른 \t \t \t \t { isChanged = 거짓; ,321 0 \t} \t \t}); 그러나 그것의 설정 isChanged 값은 항상 true로 설정됩니다. 그럼 내가해야 할 일이 뭐지? – user1722857
양식에서 아무 것도 변경하지 않았다면 더티는 틀립니다. 어떤 분야가 더러운 지 알아 내려고 했습니까? 위의 편집을 참조하십시오. – player
나는 당신이 제안한대로 따라 갔다. 그러나 "TypeError : form.getForm"이 함수가 아닙니다. [Break On This Error] \t var fields = form.getForm(). getFields(). items; " – user1722857