什么是使用c#在运行时清除asp.net表单的最简单方法。
由于 属
答案 0 :(得分:1)
我假设您要清除输入框,下拉列表等。可以通过以下方式在代码中以递归方式清除所有数据。
foreach( var control in this.Controls )
{
ClearControl( control );
}
和递归函数
private void ClearControl( Control control )
{
var textbox = control as TextBox;
if (textbox != null)
textbox.Text = string.Empty;
var dropDownList = control as DropDownList;
if (dropDownList != null)
dropDownList.SelectedIndex = 0;
// handle any other control //
foreach( Control childControl in control.Controls )
{
ClearControl( childControl );
}
}
答案 1 :(得分:0)
我使用以下JS / c#来清除表单。
c#添加js调用onload
Page.ClientScript.RegisterStartupScript(typeof(WebForm3), "ClearPage", "ClearForm();", true);
JS清除表单
function ClearForm() {
var AllControls = document.getElementById('ctl00_ContentPlaceHolder1_PnlAll')
var Inputs = AllControls.getElementsByTagName('input');
for (var y = 0; y < Inputs.length; y++) {
// define element type
type = Inputs[y].type
// alert before erasing form element
//alert('form='+x+' element='+y+' type='+type);
// switch on element type
switch (type) {
case "text":
case "textarea":
case "password":
//case "hidden":
Inputs[y].value = "";
break;
}
}
}