2014-01-16 23 views
0

我正在開發一個類項目,我在想如果任何人都可以提供一些輸入/信息,我將如何以更好的方式驗證我的表單域。具體來說,我希望彈出警告框來顯示所有缺少的必填字段,而不是每個缺少字段一個框。任何輸入都會膨脹。使用Javascript驗證和提醒的HTML表單

<script type="text/Javascript"> 
function validateForm(assignmentForm) 
{ 
    valid = true 
    if (document.assignmentForm.firstName.value=="") 
    { 
     alert ("Please fill in your first name."); 
     valid = false; 
    } 
    if (document.assignmentForm.lastName.value=="") 
    { 
     alert ("Please fill in your last name."); 
     valid = false; 
    } 
    return valid; 
} 
</script> 

我是新來的HTML內使用JavaScript,所以我提前道歉,最有可能是一個非常新手的問題。此外,這裏的HTML部分的片段:

<!--Name Text Fields--> 
<form id="assignmentForm" name="assignmentForm" method="post" onsubmit="return validateForm();"> 
    <table cellspacing="15"> 
    <tr> 
     <td><a href="#">First Name: </a></td> 
     <td><input type="text" id="firstName" name="firstName"></td> 
    </tr> 
    <tr> 
     <td><a href="#">Last Name: </a></td> 
     <td><input type="text" id="lastName" name="lastName"></td> 
    </tr> 
+0

嗨,我們可以幫助你,如果你問一個具體的問題,「更好」是一個意見問題。此外,你應該首先谷歌關於警報框的信息,有關於網絡上的信息很多。 – anthonygore

回答

3

讓每個驗證步驟都將其消息添加到所有驗證完成後顯示的數組中。

function validateForm(assignmentForm) 
{ 
    var messages = []; 
    if (document.assignmentForm.firstName.value=="") 
    { 
     messages.push("Please fill in your first name."); 
    } 
    if (document.assignmentForm.lastName.value=="") 
    { 
     messages.push("Please fill in your last name."); 
    } 
    if (messages.length > 0) { 
     alert(messages.join('\n')); 
     return false; 
    } else { 
     return true; 
    } 
} 
+0

你們是巫師。非常感謝! – Zeb23

0

如果你檢查的每個字段之前創建的函數的字符串變量,然後你可以附加哪些需要被填充的通知

後所有檢查都已完成,然後使用您建立的字符串顯示警報。

我還建議你檢查有效數據的字段 - 這對於你現在正在進行的班級工作來說可能不是必需的,但對於任何真實世界的代碼來說,這都是很好的做法。例如,確保名稱僅由字符組成。