清除特定文本框ASPX页面

时间:2016-08-25 16:41:09

标签: c# jquery asp.net textbox

我在尝试清除aspx页面上文本框中的这些银行和路由号码时遇到了麻烦。我已经看到它用于指定文本框ID的地方并执行textbox.text = String.Empty()。但这似乎不适用于此。也许我使用的是错误的ID?我也尝试过使用JQuery .val(“”),但这似乎也没有用。

这是代码,我想在点击按钮时清除路由和帐户文本字段:

     <div id="DivUser1BankInfo" class="labelAndTextboxContainer">
            <div class="labelContainer">
            <asp:Label CssClass="rightFloat" ID="User1LabelRoutingNumber" runat="server" Text="Routing #:"></asp:Label><br />
                </div>
                    <div class="textboxContainer">
                        <asp:TextBox ID="User1TextRoutingNumber" CssClass="leftFloat " runat="server" Font-Size="Smaller" Width="180px" 
                                        Text='<%# Bind("User1BankRoutingNumber") %>'
                                        Visible='<%#  ApexRemington.BLL.VendorBLL.ShowUser1BankInfo((string)Eval("User1BankInfoEditUser")) %>' /><br />
                    </div>
            <div class="labelContainer">
            <asp:Label CssClass="rightFloat" ID="User1LabelAccountNumber" runat="server" Text="Account #:"></asp:Label><br />
                    </div>
                    <div class="textboxContainer">
                    <asp:TextBox ID="User1TextAccountNumber" CssClass="leftFloat " runat="server" Font-Size="Smaller" Width="180px" 
                                        Text='<%# Bind("User1BankAccountNumber") %>'
                                        Visible='<%#  ApexRemington.BLL.VendorBLL.ShowUser1BankInfo((string)Eval("User1BankInfoEditUser")) %>' /><br />
                    </div>
                    <button type="button" id="clearButton1">Clear</button>

                    <div class="button">
                    <asp:Button ID="User1ClearBankInfo" runat="server" Text="Reset"
                                        Visible='<%#  ApexRemington.BLL.VendorBLL.ShowUser1BankInfo((string)Eval("User1BankInfoEditUser")) %>'  OnClick="clearFields_btn"/><br />
                    </div>

OnClick =“clearFields_btn”代码隐藏=

protected void clearFields_btn(object sender, EventArgs e)
    {


    }

感谢您的帮助!

3 个答案:

答案 0 :(得分:4)

我暂时没有使用ASP.NET,但我认为您可能需要OnClientClick事件,而不是OnClickOnClientClick用于客户端代码(您的jQuery / JavaScript),OnClick用于服务器端代码(您的C#或VB.NET)。

您还希望您的OnClientClick事件方法返回false,否则服务器端代码也会触发。

所以我觉得你想要这样的东西:

    <asp:Button ID="User1ClearBankInfo" runat="server" Text="Reset"
    Visible='<%#  ApexRemington.BLL.VendorBLL.ShowUser1BankInfo((string)Eval("User1BankInfoEditUser")) %>
     OnClientClick="clearText();"/>

然后clearText看起来像这样:

    <script>
    function clearText()
    {

          //our two IDs         

           $('input[id*="User1TextRoutingNumber"]').each(function(index) {
                $(this).val('');
            });
           $('input[id*="User1TextAccountNumber"]').each(function(index) {
                $(this).val('');
            });

           return false;
    }
    </script>
编辑:拍摄,我看到了我的错误。修复了清除文本框文本的代码,而不是按钮(&#34;此&#34;)。

编辑:从&#34;清除&#34;中移除空格文本val。

编辑:使搜索更灵活,更少依赖于GridView或没有GridView。

答案 1 :(得分:2)

你需要这样的东西。假设您需要一个客户端解决方案(从您的问题中不是很清楚)。

    <script type="text/javascript">
        function clearTextBox() {
            document.getElementById("<%= User1TextRoutingNumber.ClientID %>").value = "";
            //or
            $("#<%= User1TextRoutingNumber.ClientID %>").val("");
            }
    </script>

<%= User1TextRoutingNumber.ClientID %>将确保您获得javascript / jQuery的正确ID。

服务器端解决方案是:

protected void clearFields_btn(object sender, EventArgs e)
{
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            TextBox tb = GridView1.Rows[i].FindControl("User1TextAccountNumber") as TextBox;
            tb.Text = "";
        }
}

答案 2 :(得分:1)

试试这个

<script>
var clear = function(textboxID){$('input[id*=' + textboxID + ']').val('');};
return false;
</script>

<button id="btClearText" onclick="javascript:return clear('txtName');">

但如果您需要更具体的答案,请发布更多信息