2012-10-29 32 views
1

我想在aspx頁面中編寫一個表單,在提交按鈕中包含veification。即使我運行調試器單擊提交不執行Js代碼(或者也許有是一個語法問題,我不知道它是什麼)。任何人都可以幫助我找到錯誤(無論是腳本的synax或HTML中的東西)?非常感謝的Default.aspx的:) 代碼:再次js函數不能在aspx中工作(表單驗證)

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>טופס הרשמה</title> 
<link rel="Stylesheet" type="text/javascript" href="style.css" /> 
<script> 
    var FinalMsg = ""; 
    function VerifyForm() { 
     VerUser(); 
     VerPasses(); 
     VerGen(); 
     alert(FinalMsg); 
    }   
    function VerUser(){ 
     var vus = document.getElementById("username").value; 
     if(vus.length=0) 
     { 
      FinalMsg+="type username"; 
     } 
    } 
    function VerPasses(){ 
     var vpasfir = document.getElementById("pass1").value; 
     var vpassec = document.getElementById("pass2").value; 
     if(vpasfir.length=0) 
     { 
      FinalMsg+="type password"; 
     } 
     if(vpassec.length=0) 
     { 
      FinalMsg+="type the secondary pass"; 
     } 
     if (vpasfir.value != vpassec.value) 
     { 
      FinalMsg+="passs aren't match"; 
     } 
    }   
    function VerGen() { 
     var vgen1 = document.getElementById("male").value; 
     var vgen2 = document.getElementById("female").value; 
     var vgen3 = document.getElementById("other").value; 
     if ((vgen1.checked==false)&&(vgen2.checked==false)&&(vgen3.checked==false&&)){ 
      FinalMsg += "haven;t chosen gender"; 
     } 
    } 

</script> 
</head> 
<body dir="rtl"> 
<center> <img src="Title.gif" width="500px"/></center> 
<form id="FormAboutYou" runat="server" method="post" onsubmit="validateForm()"> 
<table border="0"> 
    <tr> 
     <td class="field">שם משתמש</td> 
     <td><input type="text" name="username" id="username"/></td> 
    </tr> 
    <tr> 
     <td class="field">סיסמה</td> 
     <td><input type="password" name="pass1" id="pass1"/></td> 
    </tr> 
    <tr> 
     <td class="field">סיסמה בשנית</td> 
     <td><input type="password" name="pass2" id="pass2"/></td> 
    </tr> 
    <tr> 
     <td class="field">כתובת דוא"ל</td> 
     <td><input type="email" name="email" id="email"/></td> 
    </tr> 
    <tr> 
     <td class="field">מזונות מועדפים</td> 
     <td Class="ChooseFrom"> 
      <input type="checkbox" name="food" value="Choclate" id="choc" /> שוקולד <br /> 
      <input type="checkbox" name="food" value="Fries" id="fries"/> צ'יפס <br /> 
      <input type="checkbox" name="food" value="Tomatoes and other vegetables" id="veg"/> ירקות ופירות <br /> 
      <input type="checkbox" name="food" value="Pasta" id="pasta"/> פסטה <br /> 
      <input type="checkbox" name="food" value="Cheese" id="che"/>גבינה <br /> 
     </td> 
    </tr> 
    <tr> 
     <td class="field">מגדר</td> 

     <td class="ChooseFrom"> 
      <input type="radio" name="gender" value="Male" id="male"/> זכר <br /> 
      <input type="radio" name="gender" value="Female" id="femle"/> נקבה <br /> 
      <input type="radio" name="gender" value="Unde" id="other"/> עדיין לא החלטתי/יש לי בעיה עם שדות בינארים <br /> 

     </td> 
    </tr> 
    <tr> 
     <td class="field">living in</td> 
     <td> 
      <select> 
       <option value="TelAviv" id="ny">new york</option> 
       <option value="PetaTikwa" id="rome">rome</option> 
       <option value="QiryatOno" id="Paris">Paris</option> 
       <option value="RamgatGan" id="lv">Las Vegas</option> 
       <option value="Haifa" id="ln">London</option> 
       <option value="Qraiot" id="bt">Bairut</option> 
       <option value="Bash" id="bej">Beijing</option> 
       <option value="Eilat" id="tk">Tokyo</option> 
      </select> 
     </td> 
    </tr> 
    <tr> 
     <td> 
      <input type="submit" name="submit" value="הזן נתוניך על פני המים" onsubmit="VerifyForm();"/> 
     </td> 
    </tr> 
</table> 
</form> 
<hr /> 
<br /><br /><br /><br /> 
<br /><br /><br /><br /> 
</body> 
</html> 

謝謝:)

回答

0

的想法可能是採取onsubmit()表單標籤。

然後爲按鈕切換到onSubmitonclick='return verifyForm();

在你verifyForm()方法需要退貨或者truefalse;如果爲false,表單將不會提交。

所以,這樣的事情在你verifyForm()結束

if (FinalMsg == ""){ 
    return true; 
    }else{ 
    return false; 
} 
+0

醫生要我們不要用「reutnr」,但做出最後警報,在頁面中的所有錯誤彈出。感謝無論如何:)有沒有人有其他建議? –

+0

雖然您需要阻止表單提交,但您可以顯示提醒。 – Darren

+0

我該如何返回警報和假值? –