讨论:ViewState 够用么?

Naola2001 2003-12-29 08:23:27
ViewState 为编程提供了很多方便,但遗憾的是只可以在服务器端操作.在客户端的表现是Hidden字段其值为微软加密了的一堆乱码.客户端程序没法处理了.

但其实有很多界面操作只需在客户端完成的.客户端的状态也需要保持.比如:一个Input输入框用户输入错了.我通过脚本把它边框设置为红色. 但如果用户点了某个与服务器交互的.Net控件.这个红框就没了.与次相似的情况还有很多...

对于以上问题,我现在谋求一种较为通用的解决方案...

思路是.用脚本和runat=Server的 Hidden来实现.Hidden可以保持住值.
脚本控制在Form onsubmit时.遍历form种的控件,取得其style,按某种格式拼合成一个字符串赋值给Hidden.
在document onload时取得Hidden中的值再分解.分别赋值给各个表单元素.

不知大家认为怎么样.欢迎发表看法
...全文
50 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
raike 2003-12-31
  • 打赏
  • 举报
回复
请你把问题说清楚
------->>>>>但如果用户点了其它某个与服务器交互的.Net控件.这个红框就没了
你这个过程是否进行页面提交
1.如果页面提交很好解决
2.如果不提交页面,设法用客户端事件解决
比尔咔咔 2003-12-30
  • 打赏
  • 举报
回复
ViewState 最大的缺陷就是 URL 提交到本页时会丢失
不过原理就应该丢得也算不上缺陷
losenetway 2003-12-30
  • 打赏
  • 举报
回复
如果有错误,你别让他提交就可以了吧
liuyong_lll 2003-12-30
  • 打赏
  • 举报
回复
你的想法的确很好,实际上是已经.net完成很多隐藏的功能........没有什么必要的!
raike 2003-12-30
  • 打赏
  • 举报
回复
同意,net_lover(孟子E章) 的说法,既然你反正是要提交的
在后台获得控件的属性值,用ViewStat保存不就性了,提交后在赋值,
为什么还要在客户端记录?
lcy5415 2003-12-30
  • 打赏
  • 举报
回复
ViewState可以满足
Naola2001 2003-12-30
  • 打赏
  • 举报
回复
我想应该可行
lyhold 2003-12-30
  • 打赏
  • 举报
回复
这个好象不行!
Naola2001 2003-12-30
  • 打赏
  • 举报
回复
比如:一个Input输入框用户输入错了.我通过脚本把它边框设置为红色. 但如果用户点了其它某个与服务器交互的.Net控件.这个红框就没了

象这样的问题ViewState可以解决么?
yjmfdm 2003-12-29
  • 打赏
  • 举报
回复
我是来学习的,ViewState很好用,没有像这么细
zhang9813 2003-12-29
  • 打赏
  • 举报
回复
你不一定要遍历所有的控件来获取Style,你可以在执行更改某个控件的style脚本时,将这个控件的名和style付到ViewState中,页面刷新时,再从ViewState中获取出来更改对应控件的Style值
cnlamar 2003-12-29
  • 打赏
  • 举报
回复
其实viewstate归根结底也就是一个隐藏的TEXT,不段的在Request和post中传递信息罢了
cleanduo 2003-12-29
  • 打赏
  • 举报
回复
mark
孟子E章 2003-12-29
  • 打赏
  • 举报
回复
.net已经自动给你保存了并自动解析了,干吗还要在客户端写?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧