如何更改jqgrid中的行位置?

如何更改jqgrid中的行位置?,jqgrid,jqgrid-asp.net,mvcjqgrid,Jqgrid,Jqgrid Asp.net,Mvcjqgrid,我在MVC中使用jqgrid,现在,我想在单击“^”时更改行位置,以获得一条直线并反转 实际上,我想在每一行设置“设置”和“关闭”标志,以更改一级行的位置 谁能帮我 有很多可能的解决方案。其中之一是使用自定义formtter定义按钮,然后使用jquery在loadComplete上绑定事件以移动行。代码如下: $("#jqGrid").jqGrid({ datatype: "local", data: mydata,

我在MVC中使用jqgrid,现在,我想在单击“^”时更改行位置,以获得一条直线并反转

实际上,我想在每一行设置“设置”和“关闭”标志,以更改一级行的位置


谁能帮我

有很多可能的解决方案。其中之一是使用自定义formtter定义按钮,然后使用jquery在loadComplete上绑定事件以移动行。代码如下:

        $("#jqGrid").jqGrid({
            datatype: "local",
            data: mydata,
            height: 250,
            width: 780,
            colModel: [
                { label :'move', formatter : myformatter, width:95},
                { label: 'Inv No', name: 'id', width: 75, key:true },
                { label: 'Date', name: 'invdate', width: 90 },
                { label: 'Client', name: 'name', width: 100 },
                { label: 'Amount', name: 'amount', width: 80 },
                { label: 'Tax', name: 'tax', width: 80 },
                { label: 'Total', name: 'total', width: 80 },
                { label: 'Notes', name: 'note', width: 150 }
            ],
            viewrecords: true, // show the current page, data rang and total records on the toolbar
            caption: "Load jqGrid through Javascript Array",
            loadComplete : function() {
              $(".up,.down").on('click', function () {
                 var row = $(this).closest("tr.jqgrow");
                 if($(this).is('.up')){
                    row.insertBefore(row.prev());
                 } else {
                    row.insertAfter(row.next());
                 }                    
              });
            }
        });
        function myformatter() {
            return '<button class="up" >Up</button>' + '<button class="down">Down</button>';
        }
$(“#jqGrid”).jqGrid({
数据类型:“本地”,
数据:mydata,
身高:250,
宽度:780,
colModel:[
{标签:'move',格式化程序:myformatter,宽度:95},
{标签:'Inv No',名称:'id',宽度:75,键:true},
{标签:'Date',名称:'invdate',宽度:90},
{标签:'Client',名称:'name',宽度:100},
{标签:“金额”,名称:“金额”,宽度:80},
{标签:'Tax',名称:'Tax',宽度:80},
{标签:'Total',名称:'Total',宽度:80},
{标签:'Notes',名称:'note',宽度:150}
],
viewrecords:true,//在工具栏上显示当前页面、数据范围和总记录
标题:“通过Javascript数组加载jqGrid”,
loadComplete:function(){
$(.up,.down”).on('单击',函数(){
var行=$(this).closest(“tr.jqgrow”);
如果($(this).is('.up')){
row.insertBefore(row.prev());
}否则{
row.insertAfter(row.next());
}                    
});
}
});
函数myformatter(){
返回“向上”+“向下”;
}

演示

使用了哪个版本的jqGrid?@TonyTomov 5.4.0-TrialThanks Tony还有一些问题如何使用ajax或其他工具将行id发送到服务器端如何添加两个额外的按钮来获取网格第一条和最后一条记录的行?我强烈建议您参考文档-参见网格方法。关于网格的第一条和最后一条记录-有许多条件可能不同-例如,您的数据类型是本地的,我们是否应该处理当前的排序等。如果您没有与当前排序相关的问题,您可能需要打开新的线程我在您的帮助下解决了这些问题。非常感谢你。