如何去掉ViewState产生的<input type="hidden"
页面查看源文件夹时,
发现 <input type= "hidden "..这样的一段字符窜长度有好几K,
怎么去掉呢,
不可以用enableViewState=false,
因为代码里用到了ViewState;
而且这样只能减少,不能完全去掉,
我看CSDN页面源文件里就没有这 <input type= "hidden "
在查了之前相关的贴,回的都不能实现.
请大家指教一下
------解决方案--------------------因为代码里用到了ViewState;
而且这样只能减少,不能完全去掉
既然你用到了ViewState;为什么还要完全去掉?去掉了你还这么用?矛盾
------解决方案-------------------- <form runat=server>
改成
<form>
即可完全去掉
例如
<%@ Page Language= "C# " %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<script runat= "server ">
public override void VerifyRenderingInServerForm(Control control)
{
}
</script>
<html xmlns= "http://www.w3.org/1999/xhtml " >
<head runat= "server ">
<title> 无标题页 </title>
</head>
<body>
<form id= "form1 ">
<div>
<asp:TextBox ID= "TextBox1 " runat= "server "> </asp:TextBox>
<asp:TextBox ID= "TextBox2 " runat= "server "> </asp:TextBox> </div>
</form>
</body>
</html>
也可以在页面的Render方法里去除。
------解决方案--------------------ViewState是asp.net保持页面的状态重要方法,去掉了就不能利用asp.net的某些功能了
------解决方案--------------------要不就不要用ViewState,要用的话它产生的hidden是必需的!
------解决方案--------------------Viewstate保存的东西,在客户段就是hidden。
------解决方案--------------------mark
------解决方案--------------------那些又不是垃圾代码,为什么要去掉?
如果去掉了hidden,就不能保存很多服务器控件在客户端的状态信息
------解决方案--------------------而且这样只能减少,不能完全去掉
===========
同意孟子老大。
------解决方案--------------------ViewState本来就是.net 封闭的hidden
------解决方案--------------------去掉了,你还怎么保存
------解决方案--------------------用了viewstate就不可能完全去掉
除非你不用.然后页面级的去除
------解决方案--------------------将所有控件的viewstate设为false
然后页面模型将被为全事件驱动的,
你必须要为每一个控件添加该事件发生后所呈现的状态,包括你认为与此次事件不相干的控件
------解决方案--------------------热烈祝贺ASP.NET群7947148成立了。
------解决方案--------------------我去面试,然后公司面试我的人说他们公司网站里不允许出现这 <input type= "hidden "...
我看了CSDN上面也没有..
就算我代码里面没有用到viewstate
一样会产生 <input type= "hidden "...
CSDN是怎么样实现的呢...
-----------
csdn是很多页面都是asp和xslt+xml页面,而不是aspx
------解决方案--------------------CSDN不是完全的.NET网站...
从它采用的技术就知道了,早期的时髦技术----用ASP生成静态网页
------解决方案--------------------ViewState 本来就是基于它的啊。你去了的话。ViewState也就失效了