2009-08-13 121 views
1

,我有我的網頁上的驗證碼是:表單驗證使用javascript

function validateForm() { 
    with (document.contactform) { 
     var alertMsg = "The following REQUIRED fields\nhave been left empty:\n"; 
     if (name.value == "") alertMsg += "\nName"; 
     if (email.value == "") alertMsg += "\nEmail"; 
     if (message.value == "") alertMsg += "\nMessage"; 
     if (alertMsg != "The following REQUIRED fields\nhave been left empty:\n") { 
      alert(alertMsg); 
      return false; 
     } else { 
      return true; 
     } 
    } 
} 

此外,我已經添加了onsubmit="return validateForm()"到我的表格節並沒有什麼似乎工作。你可以在http://obliqueinteractive.com/contact.html

查看源頁面任何幫助,將不勝感激 感謝

+3

請把你的代碼代碼標籤。因爲它是html/javascript我們看不到它。我會編輯但沒有足夠的認可 – Ori 2009-08-13 20:40:43

回答

0

一個建議是嘗試使用的document.getElementById(「聯繫形式」),而不是僅僅document.contactform

我有從未使用過帶有命令,所以我並不很清楚如何使用它

{編輯}

您的網站上打轉轉後,我相信我有什麼建議海關會解決您的問題, 讓我知道如何去

0

添加name="contactform"屬性的表單標籤或使用document.getElementById("contactform") 代替document.contactform

3

變化

<form id="contactform" onsubmit="return validateForm()" action="" method="post"> 

<form name="contactform" id="contactform" onsubmit="return validateForm()" action="" method="post"> 

當您嘗試訪問document.contactform時會出現此問題。它正在尋找名爲contactformform,而不是idcontactform

+0

我會保留'id =「contactform」' - 儘管添加'name'屬性可以解決問題,刪除'id'可能會影響表單的CSS樣式。 – Donut 2009-08-13 20:51:07

+0

解決問題的巧妙方法。不需要更改js文件。 – Cleiton 2009-08-13 20:52:02

+0

好主意,dgritsko,我會編輯它。 – Rob 2009-08-13 20:54:30

0

問題是與validateForm函數。

變化:

 
function validateForm() { 
    with (document.contactform) { 

到:

 
function validateForm() { 
    with (document.getElementById('contactform')) {