2014-04-18 2 views
0

두 개의 제출 버튼이있는 양식이 있습니다. 이 양식에는 여러 개의 입력란이 있으며 그 중 하나는 여러 HTML5 유효성 검사 속성 (예 : required, type="email")이있는 필드 "X"입니다. 버튼 1로 제출할 때 유효성 검사에서 "X"를 무시하고 싶습니다. 버튼 2를 눌러 제출하면 모든 것이 정상적으로 처리되어야합니다.HTML5 유효성 검사의 입력란을 동적으로 무시합니다.

또한 버튼 1로 제출하면 양식이 새 창에 제출됩니다. 따라서 다음과 같이 할 수 있습니다. 버튼 1로 제출 - "X"필드에 입력 - 버튼 2로 제출 같은 창. 따라서 버튼 1로 제출할 때 'X'를 사용 중지하는 것은 해결책이 아닙니다.

답변

0

당신은 제출 # 1 버튼을 클릭시 버튼의 필수 속성을 제거하기위한 순수 자바 스크립트 또는 jQuery를 사용할 수 있습니다

subOne.addEventListener('click', function (e) { 
    e.preventDefault(); 

    X.removeAttribute('required'); 
}); 

http://jsfiddle.net/Volter9/5pxRX/4/

+0

버튼을 새 창에 게시하면 사용자는 현재 창에서 계속 작업 할 수 있습니다. 그래서 이것은 작동하지 않습니다. 감사! – qtuan

+0

작동하려면 form.submit()을 삭제하면됩니다. – volter9

+0

jsFiddle의 편집 : http://jsfiddle.net/Volter9/5pxRX/3/ – volter9

0

제출 1로 제출할 때 "X"를 비활성화하십시오. submit1 요청에 성공 및 실패 콜백을 추가하고 해당 콜백에서 "X"를 활성화합니다. 이렇게하면 문제가 해결됩니다.

+0

Submit1 비 아약스이다. 콜백을 등록하는 방법은 무엇입니까? – qtuan

관련 문제