首页 > 解决方案 > 注册表单上的 asp.net + asp:button、HTML 和 Javascript 存在问题

问题描述

我现在正在做一个网站,我在注册表单上,我做了一个 javascript 数据检查,我使用了一个 asp:button,我试图检查我的 javascript 是否工作,它正在工作,但它正在刷新(f5) 每次我单击按钮时都会出现错误,因为文本框是空的,它正在刷新并且不返回 false;我需要帮助来解决它...... :(我试图让注册按钮(asp:button)链接到另一个html页面,我也没有成功......有人可以帮我解决这两个问题请问有什么问题吗?:)

         function checkform() {
              var fname1 = document.getElementById('<%=firstname.ClientID%>');
              if (fname1.value == "") 
              {
                  alert("אנא מלא שם פרטי");
                  return false;
              }
              if (fname1.value.length < 2) {
                  alert("שם פרטי חייב להיות גדול מאות אחת ");
                  return false;
              }
              if (fname1.value.length > 12) {
                  alert("שם פרטי חייב להיות קטן מ - 12 אותיות");
                  return false;
              }
              if(!(fname1.value >= 'א' && fname1.value <= 'ת')) {
                  alert("שם פרטי חייב להיות באותיות בעברית ובלי מספרים!");
                  return false;
              }
              var lname1 = document.getElementById('<%=lastname.ClientID%>').value;
              if (lname1 == "") {
                  alert("אנא מלא שם משפחה");
                  return false;
              }
              if (lname1.length < 2) {
                  alert("שם משפחה חייב להיות גדול מאות אחת ");
                  return false;
              }
              if (lname1.length > 12) {
                  alert("שם משפחה חייב להיות קטן מ - 12 אותיות");
                  return false;
              }
              if (!(lname1 >= 'א' && lname1 <= 'ת')) {
                  alert("שם משפחה חייב להיות באותיות בעברית ובלי מספרים!")
                  return false;
              }
              var Ourplace1 = document.getElementById("Ourplace");
              if (!(Ourplace.selected || Ourplace2.selected || Ourplace3.selected || Ourplace5.selected || Ourplace4.selected)) {
                  alert("אנא בחר אזור מגורים");
                  return false;
              }
              var DateCheck = document.getElementById("date").value;
              if (DateCheck > date.max || DateCheck < date.min) {
                  alert("נא להזין תאריך חוקי!");
                  return false;
              }
              var DateCheck = document.getElementById("date").value;
              if (DateCheck > "2014-12-12") {
                  alert("הגיל המינימלי להרשמה לאתר הוא 5!");
                  return false;
              }    
              var gender1 = document.getElementsByName("gender")
              if (!(gender1[0].checked || gender1[1].checked || gender1[2].checked)) {
                  alert("אנא בחר מין")
                  return false;
              }
              var email1 = document.getElementById('<%=MyEmail.ClientID%>').value;
              if (email1 == "") {
                  alert("אנא מלא את האימייל שלך");
                  return false;
              }
              var filter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
              if (!filter.test(email1)) {
                 alert('נא לרשום אימייל תקין');
                  return false;
              }
              var UserName = document.getElementById('<%=AccountText.ClientID%>').value;
              if (UserName == "") {
                  alert("נא להכניס שם משתמש");
                  return false;
              }
              if (UserName >= 'א' && UserName <= 'ת') {
                  alert("שם משתמש חייב להיות באנגלית!");
                  return false;
              }
              if (UserName.length < 6) {
                  alert("שם משתמש חייב להיות גדול מ - 6 תווים");
                  return false;
              }
              var password1 = document.getElementById('<%=pass.ClientID%>').value;
              if (password1 == "") {
                  alert("נא להזין סיסמה");
                  return false;
              }
              if (password1 >= 'א' && password1 <= 'ת') {
                  alert("הסיסמה חייבת להיות באנגלית!");
                  return false;
              }
              if (password1.length < 5) {
              alert("סיסמה חייבת להיות יותר מ - 5 תווים");
              return false;
               }
          var password2 = document.getElementById('<%=passchecker.ClientID%>').value;
              if (password2 == "") {
                  alert("נא להזין אימות סיסמה");
                  return false;
              }
              if (password1 != password2) {
                  alert("אימות סיסמה לא תואם");
                  return false;
              }
              alert("נרשמת בהצלחה");
              return true;  
          }
            <asp:button ID="RegisterButton" runat="server" Text="הירשם" class="RegisterStyle" onclientclick="checkform()" onclick="RegisterButton_Click1" />                                                                          
           <input type = "reset" runat="server" id="Cleaner" class = "RegisterStyle1" onclick="return Cleaner_onclick()" />

请帮我解决它..我希望javascript表单测试在插入我的数据库之前能够工作......

标签: javascriptc#htmlasp.net

解决方案


您需要在 onclientclick 属性中添加 return 语句。

    <asp:button ID="RegisterButton" runat="server" Text="הירשם" class="RegisterStyle" onclientclick="return checkform();" onclick="RegisterButton_Click1" />                                                                          

此外,请确保 checkform 方法中没有 javascript 错误。


推荐阅读