【问题标题】:validating asp.net textBox using Javascript使用 Javascript 验证 asp.net 文本框
【发布时间】:2011-08-05 01:44:37
【问题描述】:

我的页面上有一个 asp.net TextBox 控件和一个搜索按钮,每当用户单击搜索按钮时,我想验证 TextBox 是否为空白。我想使用 onClientClick 事件并传递参数,因为我的 Javascript 函数将从外部 JS 调用。

这是我尝试过的。

<asp:TextBox ID="search" runat="server">
</asp:TextBox>

<script language="javascript" type="text/javascript">
    function voidsearch(s) {
        alert(document.getElementById(s).value);
    }
</script>

<asp:ImageButton ID="img1" runat="server" ImageUrl="Dotnetnuke.ico" 
    OnClientClick="voidsearch('<%= search.ClientID %>'); return false;" />

但这是抛出错误。所需对象。我也通过了 this.search.. 但同样的错误。我不明白为什么会出现这个错误,因为我首先声明了控制权,然后调用了它的 ID。

请任何人帮助我。

【问题讨论】:

    标签: javascript asp.net validation


    【解决方案1】:

    似乎“搜索”文本框被放置在 INamingContainer 上,因此无法评估它的 ClientID 属性。使用infragistics get clientID of dropdown in Rowedit template线程中描述的方法:

    <asp:TextBox ID="search" runat="server" OnInit="search_Init"></asp:TextBox>
    <asp:ImageButton ID="img1" runat="server" ImageUrl="Dotnetnuke.ico" 
        OnClientClick="voidsearch();" return false;" />
    
    protected void search_Init(object sender, EventArgs e) {
        TextBox txt = (TextBox)sender;
        string script = string.Format("var _{0} = document.getElementById('{1}');", txt.ID, txt.ClientID);
        Page.ClientScript.RegisterStartupScript(Page.GetType(), "ANY_KEY", script, true);
    }
    
    <script language="javascript" type="text/javascript">
    function voidsearch() {
        alert(_search);
        alert(_search.value);
    }
    </script>
    

    【讨论】:

      【解决方案2】:

      在 asp.net 中单击按钮时验证空白文本框

      <asp:textbox id="name" runat="server"></asp:textbox>
      

      为验证文本框创建 JavaScript 函数

      <script language="javascript" type="text/javascript">
         function validate()
            {
               if(document.getElementByID("<%=name.ClientID%>").value=="")
                 {
                    alert("Please enter something");
                    document.getElementByID("<%=name.ClientID%>").focus();
                    return false;
                 }
                 return true;
            }
      </script>
      

      按钮点击调用函数:

      <asp:button id="btn1" runat="server" OnClientClick="return validate()"></asp:button>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-19
        • 1970-01-01
        相关资源
        最近更新 更多