jqgrid - 删除多个选定的行

时间:2015-04-23 15:06:06

标签: jqgrid

我正在尝试删除多个选定的行。我按照此处描述的方式实现了多项选择:https://stackoverflow.com/a/4186851/1844996

我的删除代码如下:

element.jqGrid('navGrid', pagerId,
    { edit:false, add:false, search:false, del:true, refresh:true },
    /*editParams*/{
    },
    /*addParams*/{
    },
    /*deleteParams : */{
        mtype: 'DELETE',
        onclickSubmit: function (params, postdata) {
            var rowids = postdata.split(",");                
            for (var i = 0; i < rowids.length; i++) {
                var id = rowids[i];                                        
                var uniqueId = element.jqGrid('getCell', id, uid);                    
                params.url = url + '/' + encodeURIComponent(uniqueId);
            }
        },
        serializeDelData: function () {
            return ''; // don't send and body for the HTTP DELETE
        }
    }
);

当只选择了一行时,DELETE HTTP请求被发送到服务器,一切都像魅力一样。 但是,对于多个选择,每个uniqueId都可以很好地创建,但只有一个DELETE HTTP与最后选择的行一起发送。任何想法如何克服这一点,并为每一行激发单独的DELETE HTTP?

1 个答案:

答案 0 :(得分:0)

我设法实现它略有不同。我没有触发多个DELETE HTTP请求,而是在url中设置逗号分隔的删除id值。

params.url = url + '/' + [uniqueIds]

并在服务器上处理删除逻辑。使用单个HTTP DELETE解决所有问题。