• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

用javascript修改了表单上的内容,为什么服务器端得不到?

yangzhenhai 2006-11-16 05:31:37
javascript修改了表单上的内容,为什么服务器端得不到?

我用javascript给表单上一个服务器控件增加了行,但是回传的时候,在服务器端没有得到这个修改后的,还是修改前的.
...全文
153 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cpp2017 2006-11-17
说明一点:
web服务器控件中的状态是保存在ViewState中.如果有前台用javascript改变,在Server中是不可能知道的。因为ViewSate中保存的值没有改变。

如果你想在前台增加 listbox的选项,又要保存的话。

可以在Form中加一个hidden,把选项中的所有关键值保存起来,如Text,Value等。

在postback后,要根据hidden中的值,在服务器增加Items
回复
fly_miss 2006-11-17
一般的做法,是在客户端增加一个input的hidden隐藏的控件,用javascript赋值后,给input的value。服务器端直接从input中取值
回复
yangzhenhai 2006-11-17
怎么设静态变量呢?
回复
haodouzhe123x 2006-11-17
应为它只有在客户段执行,你给他个设个静态的变量不就可以解决了吗???
回复
yangzhenhai 2006-11-17
哦,我试着给hiddenfiled,已经可以了.
但是我listbox已经enabledviewstate,为什么每次刷新以后,所有javascript写上去的值都没有了呢?为什么.
回复
softfire007 2006-11-16
需要把值偷偷的给 hiddenFiled或那些可以用VIEWsTATE的控件 runat=server
回复
yangzhenhai 2006-11-16
顶,楼上的指条明路吧,我是新手,刚刚开始学.
回复
你不是因为一两句话不会写而出现这个问题,而是完全没有这样的一条路,你需要自己凿山开路,做很多工作,例如你要把你要干的事情写入一个hiddenField,然后在服务器端在ValueChanged事件中写语法解析和事务处理程序。
回复
你这种做法的原理是什么,有相关的参考和依据吗?
回复
yangzhenhai 2006-11-16
我是给ListBox增加了行,调试发现 listbox.Rows = 4
但是 listbox.Items.Count = 0
这该怎么办?
回复
相关推荐
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2006-11-16 05:31
社区公告
暂无公告