重置/清除所有文本框功能不起作用
本文关键字:功能 不起作用 文本 清除 重置 | 更新日期: 2023-09-27 18:20:28
我有一个函数应该清除/重置aspx.page中的所有文本框,而这个页面使用的是母版页,但它不起作用。下面是代码。刚从这个网站得到这个代码。
//Clear all textbox
ResetTextBoxes(this);
//function to clear textboxes
private void ResetTextBoxes(Control parent)
{
if (parent is TextBox)
{
((TextBox)parent).Text = string.Empty;
}
foreach (Control child in parent.Controls)
{
if (child is TextBox)
{
((TextBox)child).Text = string.Empty;
}
ResetTextBoxes(child);
}
}
只想在asp.net codebehind上共享一个解决方案。在这种情况下,您应该将文本框的所有id都放在数组中。
TextBox[] textboxes = {TextBox2,TextBox3,TextBox4,TextBox5,TextBox6 };
for (int i = 0; i < 5; i++)
{
TextBox myTextBox = textboxes[i];
myTextBox.Text = "";
}
我发现的另一种方法是使用javascript函数来清除我的所有asp.net文本框。我在所有的文本框中添加了一个类,例如
<asp:TextBox ID="txtName" runat="server" class="mTxtBox"> </asp:TextBox>
<asp:TextBox ID="txtID" runat="server" class="mTxtBox"> </asp:TextBox>
<asp:TextBox ID="txtDept" runat="server" class="mTxtBox"> </asp:TextBox>
<asp:Button onclick="ClearTxtBoxes_Click" ID="ClearTxtBoxes" runat="server" Text="Clear Fields"> </asp:Button>
//按钮的onclick事件
ScriptManager.RegisterStartupScript(this,this.GetType(),"runJs","clearText();",true);
//我的JavaScriptFunction
function clearText(){
$('.mTxtBox').val('');
}
控件有时很难更新。试着调用child.Refresh();
,看看是否修复了它。