清除特定文本框ASPX页面
本文关键字:ASPX 页面 文本 清除 | 更新日期: 2023-09-27 18:04:04
我在试图清除aspx页面上的文本框中的这些银行和路由号码时遇到了麻烦。我看到它被用在指定文本框的ID并创建一个文本框的地方。text = String.Empty()。但这在这里似乎行不通。也许我用错了身份证??我也尝试过使用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)
{
}
谢谢你的帮助!
我没有使用过ASP。NET,但我认为你可能想要OnClientClick
事件,而不是OnClick
。OnClientClick
是客户端代码(你的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>
编辑:哎呀,我看到我的错误了。修正了清除文本框文本的代码,而不是按钮("this")。编辑:删除"clear"文本值中的空格。
编辑:使搜索更灵活一点,更少依赖于GridView或没有GridView
试试这个
<script>
var clear = function(textboxID){$('input[id*=' + textboxID + ']').val('');};
return false;
</script>
<button id="btClearText" onclick="javascript:return clear('txtName');">
但如果您需要更具体的答案,请发布更多信息
您需要这样的东西。假设您需要一个客户端解决方案(从您的问题中不太清楚)。
<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 = "";
}
}