2013-07-24 23 views
0

我無法弄清楚爲什麼這不工作的生活。如果我提醒它有效,但它不工作,當我想改變顯示。試圖改變顯示=無功能阻止

<script> 
function validatesForm() { 
     var x=document.forms["MYPage"]["name"].value; 
     if (x == null || x == "") 
     { 
      document.getElementById("errorname").style.display="block"; 
      return false; 
     } 

    } 
    </script> 
</head> 
<body> 

<form name="MYPage"> 
Name: 
    <input type="text" name="name" />&nbsp&nbsp&nbsp <p id="errorname" style="color:red;  display:none;">Please fill out this field</p> 

    <input type="submit" value="Validate!" onclick="validatesForm()"> 
</form> 

回答

0

驗證函數不應該從提交按鈕的onclick事件中調用,就像你擁有它。相反,它應該從表單標記的onsubmit事件中調用,如<form name="MYPage" onsubmit="return validatesForm();">。在函數調用之前還要注意單詞return,該函數調用驗證函數的布爾結果並使用它來決定是否提交。

這是一個很好的教程和例子:http://w3schools.com/js/js_form_validation.asp