나는 submit
버튼을 통해 제출되는 양식을 가지고 있습니다. 클릭하면 자바 스크립트 유효성 검사가 수행되고 텍스트 상자 아래에 오류 필드가 표시됩니다. 따라서 오류가있는 경우 컨트롤은 같은 페이지로 돌아갑니다. 내 문제는 양식 게시 후, 나는 두 오류 필드를보고 유지하고 하나를 삭제하고 하나만 유지해야합니다. 이를 위해폼 제출 전에`onclick()`이 호출되는 이유는 무엇입니까?
, 난 제출 버튼에서 클릭 함수를 호출하고 거기에 내가 오류 DIV ID가 같이 존재 여부를 확인하는 것을 시도하고있다 :
checkErrors()
방법 내부 지금
<input type="image" name="submit" onclick = 'checkErrors()'>
:
function checkErrors(){
var errorElem1 = document.getElementById('errField1');
var errorElem2 = document.getElementById('errField2');
if((errorElem1 != null) && (errorElem2 != null)){
alert("Two error fields.");
errorElem2.style.display='none';
}
}
이제 버튼을 클릭하면 알림이 표시되지 않습니다.
그래서 나는 경우 조건을 제거하고 그것을 유지 :function checkErrors(){
var errorElem1 = document.getElementById('errField1');
var errorElem2 = document.getElementById('errField2');
errorElem2.style.display='none';
}
}
지금, 내가 불을 지르고 콘솔에서 오류를 참조하십시오 elem2 is null
를. 즉, onclick
이 실행되고 포스트 만 작성되므로 onclick 후에 elem2
이 발견되지 않습니다.
이 양식으로 제출 :
<form name="IntitalJspPage" method="post" action="Controller" onsubmit="validate(this); return false;">
지금 내가 여기서 할 수있는 양식을 제출하고 오류 필드가 페이지에 렌더링 된 후 온 클릭 전화를받을 무엇을?
사실, 비동기 아약스 유효성 검사가 발생하고 오류가있을 경우 동일한 페이지가 오류 필드에 오류와 함께로드됩니다. 따라서 기본적으로 양식을 제출할 때 동일한 페이지에 AJax 사후 검증이로드됩니다. –
비동기 아약스 유효성 검사? 당신이 제공하는 코드에서 그게 뭐지? – MaVRoSCy
질문은 '아약스 확인'에 관한 것이 아닙니다. 오히려 폼이 제출되고 같은 페이지에 내용이로드 된 후에 내가'onclick'을 호출 할 수 있는지 여부입니다. –