【发布时间】:2017-03-22 06:57:36
【问题描述】:
我从数据库中填充了一个网格视图。 然后我用javascript代码重新排列了gridview中的行。 我想将重新排列的网格视图复制到数据表 怎么可能??
【问题讨论】:
我从数据库中填充了一个网格视图。 然后我用javascript代码重新排列了gridview中的行。 我想将重新排列的网格视图复制到数据表 怎么可能??
【问题讨论】:
如果您使用 Javascript 重新排列数据,则必须使用 Javascript 更新数据库。如果使用服务器端代码,您将无法做到这一点。
在服务器端获取数据并绑定GridView,然后用 Javascript 重新排列它不是一个好主意。我建议您要么纯粹从 Javascript 获取数据,要么将数据安排在服务器端 binding 您的 GridView 之前。
【讨论】:
可能有多种方法
第一种方法
GridView 行在每一行中都有一个隐藏字段,应该使用新的行索引进行更新,并且在数据库中有一列用于行索引/顺序。
当用户更改 GridView Row 的行索引时,您将不得不更改所有受新行索引影响的隐藏字段。在服务器端,您必须遍历 GridView 行并将相应的行索引/顺序保存在行列中以获取行顺序。
第二种方法
您可以使用 ajax (jquery ajax) 在每个排列上发送更改的行索引,并将更改的索引保存在数据库行顺序列中。
【讨论】:
如果您需要在不重新加载页面的情况下对 gridview 进行排序,则使用更新面板启用和 gridview pageindexchange 和 sorting 事件的代码,如果您需要任何指示同时处理使用 updateprogress 控件。
如果您打算更新数据。然后使用 ajax 将数据发送到 webmethod 并将其更新到 DB
【讨论】: