2016-05-14 55 views
0

有人可以告訴我我做錯了什麼,當我嘗試提交沒有填寫必填字段的表單時,我的警報不會出現。調試此代碼?警報不起作用?

當我只爲「名稱」字段包含一個警報腳本它會工作,我試圖添加更多的參數,如電子郵件電話和名稱到一個驗證腳本,但似乎沒有工作。

<script type="text/javascript"> 
function validateName() { 
var x = document.forms["form"]["Name"].value; 
if (x == null || x == "") { 
alert("your name needs to be entered"); 
return false; 
} 
} 
</script> 

<script type="text/javascript"> 
function validateEmail() { 
var x = document.forms["form"]["Email"].value; 
if (x == null || x == "") { 
alert("your email needs to be entered"); 
return false; 
} 
} 
</script> 
<script type="text/javascript"> 

function validatePhone() { 
var x = document.forms["form"]["Phone"].value; 
if (x == null || x == "") { 
alert("your phone number needs to be entered"); 
return false; 
} 
} 
</script> 

<script type="text/javascript"> 

function validateComments() { 
var x = document.forms["form"]["comments"].value; 
if (x == null || x == "") { 
alert("please enter some comments"); 
return false; 
} 
} 
</script> 

<script type="text/javascript"> 
function validateMail(email) { 
var re = /^(([^<>()\[\]\\.,;:\[email protected]"]+(\.[^<>()\[\]\\.,;:\[email protected]"]+)*)| (".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA- Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 
return re.test(email); 
} 
</script> 


<form action="formmail.php" method="get" name= "form"  onsubmit="return validateForm()" method="post"> 
<p> name </p> 
<input type="text" name="Name" min="2"/> 
<br> 
<p>email</p> 
<input type="email" name="Email" min="2"/> 
<br> 
<p> phone number</p> 
<input type="tel" name="Phone"/> 
<br> 

<h2> Team </h2> 
<p>Select your team<br/> 
</p> 
<select multiple name="interests"> 
<option value="Adults">Adults</option> 
<option value="Under12s" >Under 12s</option> 
<option value="under6s" >Under 6s</option> 
</select> 
<h2>Are you an existing member? </h2> 
<p> 
<input type="radio" name="roomRating" value="excellent">yes<br/> 
<input type="radio" name="roomRating" value="good">no<br/> 
</p> 
<p> comments </p> 
<textarea name="comments" rows="5" cols="25" id="comments"> </textarea> 
<p> 
<input onclick="myFunction" type="submit" name="submit" value="Submit"/> 
</p> 

</form> 
+3

三江源 –

+0

啊這麼簡單。只有一個腳本標記和多個函數 – sosro

+0

只是改變了函數名和警報仍然沒有工作:( – sosro

回答

3

您不能有多個同名的函數validateForm,只有最後一個會持續。您可以將它們組合到一個功能中,但是,按照您目前的方法,只會生成第一個警報。也就是說,只會顯示第一個錯誤。

+0

啊我看到謝謝你 – sosro

+0

嗯我剛試過,它沒有工作?只是提交沒有任何警報 – sosro

+0

我不能評論我看不到的代碼。現在您應該重新編寫代碼,現在可能會提出一個新問題。 –