请问高手们:
我要实现一个客户端的检验功能,就是在用户点"提交"之后,用JAVASCRIPT代码检查一些TEXTBOX是否填写,如果没有填写则不能提交,会弹出对话框来提醒用户.
本来打算用JAVASCRIPT写的,但JAVASCRIPT不能检验服务器控件里的数据,用VS自带的validateXXX之类的东东又不能弹出对话框,不知各位有什么更好的办法?

解决方案 »

  1.   

    就是JAVASCRIPT,例如 if(document.all['TextBox1'].value == "")alert("请输入XXX");在后台验证也可以
    button1_Click(..)
    {
       if(TextBox1.Text == "")
       {
           Response.Write("<script>alert('请输入XXX');</script>");
           return;
       }
       .....
    }
      

  2.   

    同意楼上那位说用html控件的兄弟!
      

  3.   

    你的服务器控件事实上也是生成html元素的,同样适用于客户段的javascript检验。比如,Asp:TextBox id="txt"生成<input type=text id="txt"你就可以用document.all.txt.value来取得用户输入的值。
      

  4.   

    javascript加上后,问题是从服务器控件无法调用,比如一个Button控件,如果按一般的方法可以在它的OnClick中调用javascript,但现在因为是服务器控件,OnClick事件是交给后台的.CS或是.VB代码来完成,从而无法调用javascript代码,同时如果在OnClick中调用javascript代码的话编译也不会通过,请教!
      

  5.   

    接楼上,试试这个你会明白更多
    Page_Load:
    Button1.Attributes.Add("onclick","return confrim('are you sure?');");
      

  6.   

    asp.net 提供的有集体验证控件啊,可以选择弹出验证错误对话框ValidationSummary的,示例如下:<asp:TextBox id="txtUserName" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ErrorMessage="请输入用户名" Display="None" ControlToValidate="txtUserName"></asp:RequiredFieldValidator>
    <asp:Button id="btnSubmit" runat="server" Text="登陆"></asp:Button>
    <asp:ValidationSummary id="ValidationSummary1" runat="server"  ShowMessageBox="True" ShowSummary="False"></asp:ValidationSummary>要点:1.RequiredFieldValidator Display="None"
          2.ValidationSummary  ShowMessageBox="True" ShowSummary="False"
      

  7.   

    但是如果ADD的SCRIPT代码一大堆呢?
    这样在代码上很麻烦吧?我打算在Form的OnSubmit事件里写实现了
      

  8.   

    比如有一个VALIDATE控件我要求它的ControlToValidate不只一个控件,如何实现呢?
      

  9.   

    没什么麻烦的?
    ValidationSummary  是个集体验证控件
    也就是说 你再加n个 RequiredFieldValidator 等验证控件
    只需要这一个就够了
    它会列出所有 验证没通过的错误信息
    你可以试一下 再回答而且 代码上 也部麻烦 在vs里面 很方便