【问题标题】:Save changes done by javascript to a table (gridview)将 javascript 所做的更改保存到表格 (gridview)
【发布时间】:2010-12-06 23:43:38
【问题描述】:
我有一个gridview 带有空单元格。每当单击单元格时,我都会使用 javascript 将单元格的内容(innerHTML 属性)替换为字符串。
当我的combobox 的索引发生更改时,我想将此更改保存在二维数组中。但是,当我在selectedindexchanged 事件期间遍历gridview 时,我对单元格所做的任何更改都不可见(所有单元格都是空的)。我猜这些变化不是持久的。
我该怎么做?
【问题讨论】:
标签:
c#
javascript
asp.net
gridview
【解决方案1】:
不,更改不是持久的。您应该阅读一些有关 web 上的表单如何工作的信息——不仅仅是特定于 asp.net——以获得更全面的理解。基本上,您的 SelectedIndexChanged 事件实际上是您页面上表单的 POST。只有表单值(例如 <input> 或 <select> 字段中的值)将被发送到服务器并可在您的 C# 代码中进行处理。因此,一种选择是为 GridView 中的每个单元格设置一个隐藏输入。另一种方法是有一个隐藏的输入,它存储一个二维数组的字符串表示,每次更改单元格的内容时,您都可以使用 JavaScript 对其进行操作。然后,当您在 C# 代码中处理这些数据时,您需要处理隐藏的输入,而不是 GridView 的单元格。