我有一个函数应该清除/重置我的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);
}
}
答案 0 :(得分:1)
我找到的另一种方法是使用一个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('');
}
答案 1 :(得分:1)
只想在asp.net codebehind上分享解决方案。在此,您应该将文本框的所有id放在数组中。
TextBox[] textboxes = {TextBox2,TextBox3,TextBox4,TextBox5,TextBox6 };
for (int i = 0; i < 5; i++)
{
TextBox myTextBox = textboxes[i];
myTextBox.Text = "";
}
答案 2 :(得分:-1)
控件有时很难更新。尝试拨打child.Refresh();
并查看是否可以解决此问题。