2012-03-06 3 views
0

XHR을 사용하는 HTML5의 인트라넷 응용 프로그램에서 개발 중입니다 (어떤 예도 액세스 할 수 없음). 테스트 here을 볼 수 있습니다.입력에 대한 상황 별 오류 메시지 트리거

은 내가 XHR을하고자하는 <form>, 나는 이런 형태의 유효성 테스트 :

if (form.checkValidity()) 
{ 
    $.post([...]); 
} else { 
    errormessages(); 
} 

같은 방법으로 포스트합니다 ([...] 부분)의 반환에를, 나는 오류가있을 수 있습니다 서버로부터 메시지를 검증합니다. 그래서 나는이 같은 inpts에 첨부 : 나는 input.validationMessage로 볼 수

input.setCustomValidity(le_error_message); 

le_error_message

정말 첨부되어 있습니다.
:invalid CSS 선택기

어떻게 브라우저 (파이어 폭스, 크롬 등) 자신의 표준 문맥 오류 메시지를 표시를 트리거 할 수 있습니다 ... 입력으로 설정되어 있지만?

나는 form.submit()을 시도했지만 실제로 양식을 제출할 것이며 심지어 브라우저에서해야 할 일을 건너 뛰기도합니다.

아무런 언급이 없으며 inputform 요소를 검사 할 수도 없습니다.

참고 사항 French speaking paper

+0

'표준 상황 별 오류 메시지'는 무엇을 의미합니까? –

답변

0

기본 "클라이언트 측 양식 오류 표시"기능으로 "서버 측 양식 오류"를 표시하려고합니까? 양식이 유효한 클라이언트 쪽이라면 오류 메시지가 전혀 표시되지 않습니다. 서버 측에서 발견 된 오류를 표시하려면 아약스를 사용하고 있으므로 javascript를 사용하여 오류 표시 기능을 직접 빌드하십시오.

+0

이것은 유용한 피드백 IMHO가 아닙니다. 그가하려고하는 것은 서버 측 유효성 검사 오류에도 HTML5 양식 유효성 검사 메커니즘을 사용하는 매우 영리하고 잠재적으로 유용한 방법입니다. 이런 식으로 setCustomValidity() 메소드를 재사용 할 수없는 이유는 분명합니다. – hallvors

0

나는 이것이 가능하면 좋을 것에 동의합니다. 아이디어가 HTML5 작업 그룹에서 논의 되었습니까? 예를 들어 form.showValidityErrors() 메소드 스크립트를 추가하여 임의로 트리거 할 수 있습니다.

그러나 jsfiddle example에서 수행하려는 작업은 작동하지 않아야합니다. 브라우저는 유효성 검사를 수행하고 전에 유효성 검사 메시지 (사용자 정의 메시지 포함)를 표시하기로되어 있습니다. submit 이벤트로부터 setCustomValidity()를 호출해도 아무런 효과가 없습니다. this demo과 같은 키 누르기/변경 리스너로 코드를 이동해야합니다.