把我做第一次做系统时对重填按钮的实现记录如下:
第一次用ImageButton可以设置背景图片,然后在后台的Click事件中写如下
this.TxtCallNo.Text = "";
this.TxtCaller.Text = "";
this.TxtTranDate.Text = "";
this.TxtTranLimit.Text = "";
this.TxtTranNo.Text = "";
this.TxtTranPres.Text = "";
this.RadioButton1.Checked = false;
this.RadioButton2.Checked = false;
this.DlstUnit.SelectedIndex = 0;
第二次也是用ImageButton,在Click事件中如下写:
foreach (Control c in form1.Controls)
{
if (c is TextBox)
((TextBox)c).Text = "";
if (c is DropDownList)
((DropDownList)c).SelectedIndex = 0;
if (c is RadioButton)
((RadioButton)c).Checked = false;
}
第三次是用<a href="#"><img src="images/but2.gif" width="61" onclick="ReSet();" />
用JavaScript写ReSet()方法:
function ReSet()
{
var len=document.form1.elements.length;
var i;
for (i=0;i<len;i++)
{
if (document.form1.elements[i].type=="text")
{
document.form1.elements[i].value="";;
}
if(document.form1.elements[i].type=="radio")
{
document.form1.elements[i].checked=false;
}
}
var obj1=document.getElementById("DlstCallerWay");
var obj5=document.getElementById("TxtRemark");
obj5.value="";
obj1.selectedIndex=0;
//不能获得DropDownList 的客户端type,不知道怎么获得的JS没学过。
//当文本框的TextMode设为multiline时也不能获得type就只能一个按照ID获得
}
这三种方法都是清空不是重置或重填,因为有时重置的要求是控件内有数据单击重置按钮后仍保留原来的
数据,例如TextBox1加载页面时的值为“胡帅”,单击后仍是“胡帅”,上面的方法单击后都清空了。
第四种方法:
<input type="image" src="images/but2.gif" name="reset"
onclick="form1.reset();return false;" />