Jquery easyui datagrid 行的上下移动实现方式

本文介绍如何使用EasyUI的Datagrid插件实现表格中选中行的上下移动功能。通过JavaScript操作DOM元素,实现了所选行在表格中的位置交换,并保持选择状态不变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
$(function() {
    $('#tt').datagrid({
        singleSelect: false,
        url: '/uploads/rs/233/bkf2ntm7/datagrid_data2.json',
        title: 'Easyui datagrid 行上下移动',
        width: 800,
        height: 'auto',
        fitColumns: true,
        columns: [[{
            field: 'itemid',
            title: 'Item ID',
            width: 80
        },
        {
            field: 'productid',
            title: 'Product ID',
            width: 120
        },
        {
            field: 'listprice',
            title: 'List Price',
            width: 80,
            align: 'right'
        },
        {
            field: 'unitcost',
            title: 'Unit Cost',
            width: 80,
            align: 'right'
        },
        {
            field: 'attr1',
            title: 'Attribute',
            width: 250
        },
        {
            field: 'status',
            title: 'Status',
            width: 60,
            align: 'center'
        },
        {
            field: 'ctr',
            title: '操作',
            width: 100,
            align: 'center',
            formatter: function() {
                return '<button onclick="move(event,this,true)">上</button><button  onclick="move(event,this,false)">下</button>';
            }
        }]]
    });
});
 
function move(e, target, isUp) {
    var $view = $(target).closest('div.datagrid-view');
    var index = $(target).closest('tr.datagrid-row').attr('datagrid-row-index');
    var $row = $view.find('tr[datagrid-row-index=' + index + ']');
 
    if (isUp) {
        $row.each(function() {
            $(this).prev().before($(this));
        });
    } else {
        $row.each(function() {
            $(this).before($(this).next());
        });
    }
    $row.removeClass('datagrid-row-over');
    e.stopPropagation();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值