Javascript 使用拖放时,如何在服务器端获取新的GridView行顺序?

Javascript 使用拖放时,如何在服务器端获取新的GridView行顺序?,javascript,jquery,asp.net,gridview,drag-and-drop,Javascript,Jquery,Asp.net,Gridview,Drag And Drop,目前我正在使用表拖放插件(http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/)在我的GridView行中实现拖放功能 可能,我将不得不处理Drop事件并将新的行顺序发送到服务器,但我不知道如何做 请记住,行顺序表示GridView中显示的记录的优先级。因此,新的行顺序将在Drop事件之后存储在数据库中 这是jquery代码: function load_lazyload() { $("#ContentP

目前我正在使用表拖放插件(http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/)在我的GridView行中实现拖放功能

可能,我将不得不处理Drop事件并将新的行顺序发送到服务器,但我不知道如何做

请记住,行顺序表示GridView中显示的记录的优先级。因此,新的行顺序将在Drop事件之后存储在数据库中

这是jquery代码:

function load_lazyload() {
        $("#ContentPlaceHolder1_GridView").tableDnD({
            onDragClass: "GbiHighlight",
            onDrop: function (table, row) {
                var rows = table.tBodies[0].rows;
                var debugStr = "Row dropped was " + row.id + ". New order: ";
                for (var i = 0; i < rows.length; i++) {
                    debugStr += rows[i].id + " ";
                }
                $("#debugArea").html(debugStr);
            },
            onDragStart: function (table, row) {
                $("#debugArea").html("Started dragging row " + row.id);
            }
        });
}
函数加载\u lazyload(){
$(“#内容占位符1_GridView”).tableDnD({
onDragClass:“GbiHighlight”,
onDrop:函数(表、行){
var rows=table.tBodies[0]。行;
var debugStr=“删除的行为“+Row.id+”。新订单:”;
对于(变量i=0;i

如果有人能指导我找到这个需求的解决方案,我将不胜感激。

onDrop事件您可以进行ajax调用,并向服务器发送debugStr以更新新的行顺序。差不多

$("#ContentPlaceHolder1_GridView").tableDnD({
  onDrop: function(table, row) {
    var rows = table.tBodies[0].rows,
        newOrder = '';
    for (var i = 0; i < rows.length; i++) {
         newOrder += rows[i].id + " ";
    }

    $.ajax({
      url: 'server_method',
      data: {
        newOrder: newOrder
      }
    });
  }
});
$(“#内容占位符1_网格视图”).tableDnD({
onDrop:函数(表、行){
var rows=table.tBodies[0]。行,
新订单=“”;
对于(变量i=0;i

如果需要,您可以在ajax调用中添加成功和错误处理程序。

以下文章将详细解释问题的答案:


希望有帮助

嘿,伙计。非常感谢你的回答。我试图实现它,但它抛出了错误,因为newOrder是未知的。您能否更具体地说明一下如何实现它。另外,我应该将服务器方法放在哪里?作为代码背后的公共空白?它应该获得哪些参数?提前感谢您的服务器方法应该是这样的-public void updaterowordr(string newOrder)。