日期:2014-05-18  浏览次数:20440 次

关于viewstate的问题
我现在有一个注册页面,上面有一个取消,他的功能是清除所有textbox里面的内容
现在问题来了,textbox都是WEB控件,那个取消是一个客户端控件,有什么办法去清除这些页面上textbox的内容,原来ASP只要访问这些控制的ID就可以了,现在都写在viewstate里面了,我怎么去读取这些相对应的内容。
如果都改成web控件页面就要在刷一次,我不想让页面在刷一次

------解决方案--------------------
用JavaSciprt就可以清除了
发给你个例子代码(JavaScript):
/*
根据ID清空多个TextBox值
*/
function SetNullValue()
{
var i,length;
i = 0;
length = arguments.length;

while(i < length)
{
var obj = document.getElementById(arguments[i++]);
obj.value = " ";
}
}
------解决方案--------------------
可以考虑在 <@page > 里使用 EnableViewState = false;
------解决方案--------------------
html不是有个reset按钮?试试那个啊
------解决方案--------------------

可以考虑在 <@page > 里使用 EnableViewState = false;
-------------------
禁用VIEWSTATE也不起作用, 我试过.


暂时想到的也只是遍历页面的元素来实现.
------解决方案--------------------
把Button换成 <input id= "Reset1 " type= "reset " value= "reset " />
------解决方案--------------------
用RESET问题:
当TEXTBOX有值, 回发之后, 再按RESET就不起作用了, 不会清空.
------解决方案--------------------
<head runat= "server ">
<title> 无标题页 </title>
<script>
function ResetText()
{
document.getElementById( "TextBox1 ").value= " ";
document.getElementById( "TextBox2 ").value= " ";
}
</script>
</head>
<body>
<form id= "form1 " runat= "server ">
<div>
<asp:TextBox ID= "TextBox1 " runat= "server "> </asp:TextBox>
<asp:TextBox ID= "TextBox2 " runat= "server "> </asp:TextBox>
<input id= "Button1 " type= "button " value= "button " onclick= "ResetText() " />
</div>
</form>
</body>
------解决方案--------------------
你的这个按钮用HTMLControl
<input type= "reset " name= "reset " value= "重填 ">


ONCLICK= "javascript:window.[Form_Name].reset();return false "