나는 꽤 솔직 자바 스크립트 폼 유효성 검사 스크립트를 작성했습니다 :자바 스크립트 양식 유효성 검사가 작동하지 않습니다 - 스크립트가 호출되지 않습니까?
가 제출 된 것<form name="contactForm" onsubmit="return validateForm()" action="./thankyou.html" method="post">
<label for="firstName">First Name <sup>*</sup></label>
<input name ="firstname" id="firstName" type="text" placeholder="First Name" required />
<label for="lastName">Last Name <sup>*</sup></label>
<input name ="lastname" id="lastName" type="text" name="lastName" placeholder="Last Name" required />
<label for="emailaddress">Email address <sup>*</sup></label>
<input name="emailaddress" id="emailAddress" type="email" placeholder="[email protected]" required />
<label for="message">Message<sup>*</sup></label>
<textarea id="message" placeholder="Remember, be nice!" required></textarea>
<input type="submit" name="submit" value="Email Me!" class="emailsub" />
<p class="small"><sup>*</sup> denotes a required field.</p>
</form>
, 실제로 전화를하지 않는 것 :
function validateForm(){
var x=document.forms["contactForm"]["firstname"].value;
if (x==null || x==""){
return false;
}
var y=document.forms["contactForm"]["lastname"].value;
if (y==null || y==""){
return false;
}
var z=document.forms["contactForm"]["emailaddress"].value;
var atpos=z.indexOf("@");
var dotpos=z.lastIndexOf(".");
if (atpos<1 || dotpos<atpos+2 || dotpos+2>=z.length){
return false;
}
var msg_area = document.getElementById("message");
msg_area.innerHTML = "";
if (document.getElementById("message").value.length < 20) {
return false;
}
else document.getElementById("contactForm").submit();
}
그것은이 양식의 유효성을 검사해야하는데 자바 스크립트. 그것이 찾는 유일한 것은 html의 "필수"부분을 충족한다는 것입니다. 나는 자바 스크립트에 익숙하지 않기 때문에 문제가있는 곳에서 눈에 띄게 분명하지만 분명히 나 자신을 찾을 수는 없다.
도움을 주시면 감사하겠습니다.
p.s. 이것은 현재 현지 웹 사이트를위한 것이므로 action = ""은 페이지를 처리하는 대신 다른 HTML로 이동합니다. 이것이 아마도 여기의 문제일까요?
콘솔에 어떤 오류가 있습니까? –
이것은 오타'document.getElementById ("message"). value.leng th'입니까? –
이상하게 콘솔에 오류가 발생하지 않습니다. 네, 그건 오타였습니다, 미안 해요. :/ – nerdarama