如何判断easyui分页里面的字段,如何添加编辑和删除功能

如何判断easyui分页里面的字段,如何添加编辑和删除功能,第1张

<table id="table_sitelinklist"></table>

<script type="text/javascript">

    var tb = $("#table_sitelinklist")

    tb.datagrid({

        url: '/Manage/SiteLinkList/',

        border:false,

        fit: true,

        //singleSelect:true,

        pagination: true,

        pagePosition:'top',

        nowrap: true,

        striped: true,

        pageList: [5,10, 15, 20, 25],

        pageSize: 20,

        pageNumber:@(ViewBag.page),

        idField:"ID",

        //queryParams: { status: _status },

        columns: [[

        { checkbox: true },

        { field: 'ID', hidden: true},

        { field: 'Name', title: '链接站点名称', width: 200, sortable: true,

            formatter: function (value, rec) {

                return "<a href='javascript:void(0)' title='点击编辑此链接信息' class='_sitelink_" + rec.ID + "'>" + value + "</a>"

            }

        },

        { field: 'URL', title: '链接地址', width: 340, sortable: true },

        { field: 'Type', title: '分类', width: 120, sortable: true },

        { field: 'SName', title: '简称', width: 120, sortable: true },

        { field: 'ShowOrder', title: '显示顺序', width: 120, sortable: true }

        ]],

        onLoadSuccess: function () { AddEditable("sitelink","/Manage/SiteLinkEdit/") }

    })

    var btns=[

                 { iconCls: 'icon-edit',text: '添加', handler: function () { AddNewObject("添加新链接","/Manage/SiteLinkEdit/?operation=1")} },

                 { iconCls: 'icon-myrealdel',text: '删除', handler: function () { SendModifyRequest("del","删除","table_sitelinklist","/Manage/SiteLinkListModify") } }

                ]

    tb.datagrid('getPager').pagination({buttons:btns})

</script>

给个示例代码给你吧。

说明一下,这个示例代码中,可以通过点击某一行的链接名称进行编辑,每一行的前面有选择框,可以选择多个。将分页工具栏放到了表格顶端,并添加了两个按钮(添加、删除),删除功能支持批量 *** 作。AddEditable、AddNewObject、SendModifyRequest是自定义的js function,这里并没有附上。

function del(){

var rows = $('#tt').datagrid("getSelections")

var copyRows = []

for ( var j= 0j <rows.lengthj++) {

copyRows.push(rows[j])

}

for(var i =0i<copyRows.lengthi++){

var index = $('#tt').datagrid('getRowIndex',copyRows[i])

$('#tt').datagrid('deleteRow',index)

}

}

原因:在easyui-1.3.3以前的版本中datatgrid删除行deleteRow的方法中,他在删除行以后会去调opts.view.deleteRow.call(opts.view,_4d2,_4d3)刷新页面上的行的index,index会发生改变;你原来rows的数据也会发生改变,把这个rows复制给另外一个数组,这样就可以了;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11552892.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存