【发布时间】:2014-06-24 12:14:31
【问题描述】:
我有一个 Asp.NET 表单。在页面加载时,我正在填充文本框和下拉列表。
当用户单击编辑按钮时,我想知道用户是否更改了值或选择了新值但随后重新选择了旧值并且实际上没有更改任何内容。
我可以想到两种方法:
- 为每个输入创建隐藏标签,然后在代码中跟踪。
- 使用会话状态或重新查询我最初上传数据的来源。
你知道更好的方法吗?
【问题讨论】:
-
您想知道什么时候?在他们操作表单时在 javascript 页面上?回帖后?
-
@xdumaine 当点击编辑按钮时,它将成为代码后面:)
-
那么你将不得不重新查询数据源。如果您使用隐藏输入,您将发布两倍的数据,并且无论如何都不能信任它(因为用户可以使用浏览器工具来操纵隐藏输入,或伪造整个 POST)。
-
当页面加载时,您必须将隐藏字段与实际输入一起填写,然后在用户单击编辑按钮时进行比较。
-
为什么不使用 Viewstate..?