none
验证控件和js验证一起用怎么办 RRS feed

  • 问题

  • 是这样的,比如我的界面上有4个文本框,我给前3个文本框拖了非空验证控件,最后一个文本框我需要判断
    if(document.getElementById('ddlRateName').options.length<=0)
    {
       alert('abc');
    }
    return false;
    我该怎么办
    2009年2月27日 2:05

答案

  • 你可以在form的onsubmit里加,例子

     

    <%@ Page Language="C#" %> 
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
     
    <script runat="server"
     
      protected void Button1_Click(object sender, EventArgs e) 
      { 
        Response.Write("ok"); 
      } 
    </script> 
     
    <html xmlns="http://www.w3.org/1999/xhtml"
    <head runat="server"
      <title></title
     
      <script type="text/javascript"
        function checkMySelf() { 
          d = document.getElementById('<%=DropDownList1.ClientID %>') 
          if (d.options.length <= 0) { 
            alert("abc") 
            return false; 
          } 
        } 
      </script> 
     
    </head> 
    <body onkeydown="KeyUp(event)"
      <form id="form1" runat="server" onsubmit="return checkMySelf()"
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
      <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
      <asp:DropDownList ID="DropDownList1" runat="server"
      </asp:DropDownList> 
      <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> 
      <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" 
        ErrorMessage="RequiredFieldValidator">Text1</asp:RequiredFieldValidator> 
      <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2" 
        ErrorMessage="RequiredFieldValidator">Text2</asp:RequiredFieldValidator> 
      </form> 
    </body> 
    </html> 
     


    孟宪会
    • 已标记为答案 cxxaspnet 2009年3月2日 1:41
    2009年2月27日 4:46
    版主

全部回复

  • 你可以在form的onsubmit里加,例子

     

    <%@ Page Language="C#" %> 
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
     
    <script runat="server"
     
      protected void Button1_Click(object sender, EventArgs e) 
      { 
        Response.Write("ok"); 
      } 
    </script> 
     
    <html xmlns="http://www.w3.org/1999/xhtml"
    <head runat="server"
      <title></title
     
      <script type="text/javascript"
        function checkMySelf() { 
          d = document.getElementById('<%=DropDownList1.ClientID %>') 
          if (d.options.length <= 0) { 
            alert("abc") 
            return false; 
          } 
        } 
      </script> 
     
    </head> 
    <body onkeydown="KeyUp(event)"
      <form id="form1" runat="server" onsubmit="return checkMySelf()"
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
      <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
      <asp:DropDownList ID="DropDownList1" runat="server"
      </asp:DropDownList> 
      <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> 
      <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" 
        ErrorMessage="RequiredFieldValidator">Text1</asp:RequiredFieldValidator> 
      <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2" 
        ErrorMessage="RequiredFieldValidator">Text2</asp:RequiredFieldValidator> 
      </form> 
    </body> 
    </html> 
     


    孟宪会
    • 已标记为答案 cxxaspnet 2009年3月2日 1:41
    2009年2月27日 4:46
    版主
  • 孟老师,验证控件好像会先在客户端做一次验证,再在服务端做一次验证

     

    我这样最后一个文本框没有在服务端再做一次验证没关系吧
    2009年2月27日 10:30
  • 你肯定是先在客户端验证之后才能到服务器端验证啊。客户端都没有通过验证的话,发送到服务器端就没有意义。
    孟宪会
    2009年2月28日 7:34
    版主