我的ASP.NET页面有两个web控件,一个textbox,一个是button。我要求textbox不能输入空。所以当textbox为空的时候按下button时弹出一个窗口告知“不可为空!”的信息,请问如何实现?

解决方案 »

  1.   

    Page_Load事件中:
    if (!IsPostBack)
    {
        Button1.Attributes.Add("onclick","return _check();");
    }客户端:
    <script language="javascript">
    function _check()
    {
        var obj = document.getElementById("TextBox1");
        if (obj.value.length == 0)
        {
            alert("不可为空!");
        }    return false;
    }
    </script>
      

  2.   

    aspx文件里
    <script>
    function checkForm()
    {
    if (document.all.NewsTitle.value.length == 0)
    {
    alert("请输入内容");
    return false;
    }
    return true;
    }
    </script>
    <asp:textbox id="NewsTitle" runat="server"></asp:textbox>
    <asp:button id="BtnSure" runat="server" Text="保存" ></asp:button>aspx.cs的PageLoad事件里写:
    if(!IsPostBack)
    {
    BtnSure.Attributes.Add("onclick","return checkForm()");
    }
      

  3.   

    Response.Write( "<script>alert('不可为空!')</script>" );
      

  4.   

    另外,你可以直接使用RequiredFieldValidator验证控件。
    1、页面中放入RequiredFieldValidator控件;
    2、设置RequiredFieldValidator的controltovalidate为TextBox1;
    3、设置RequiredFieldValidator的errormessage为“不能为空”。当然,使用验证控件是不会弹出对话框的,只能显示到页面中指定的位置。
      

  5.   

    Response.Write("<script language=javascript>alert(\"不可为空!\");</script>");
      

  6.   


    1.
      Response.Write("<script language=javascript> window.alert('不能为空');</script>");
    2.
      Response.Write("<script>alert('"+_OperateWarning+"');</script>");
      

  7.   

    当然,使用验证控件是不会弹出对话框的,只能显示到页面中指定的位置。可以的,用ValidationSummary控件对所有RequiredFieldValidator进行汇总,也会弹对话框的。