0

我正在尝试在 HTML 表格中使用jqGrid并且工作正常,但是我想在选择项目时获得一个按钮。

我试过这个:

    $(function () {
        tableToGrid(".mytable", {
            autowidth:true,
            pager: '#pager',
            rowNum: 20,
            viewrecords: true,
            loadui: true,
            rowList: [10,20,50],
            multiselect: true,
            caption: "Multi Select Example",

            onSelectAll : function(aSel,selected) {
                if(selected){
                    var value =0;
                    for(var i=0;i<aSel.length;i++){
                        var data = jQuery(".mytable").getRowData(aSel[i]);
                        value += parseFloat(data.total);
                    }
                    jQuery('#gbox_').before( $('<button class="button" type="button" value="Edit">Edit</button>') );
                } else {
                    jQuery(".button").remove();
                }
            },
            onSelectRow: function (id) {
                var selRows = $(this).jqGrid('getGridParam','selarrrow');
                if (selRows.length === 0) {
                    $(".button").remove();
                } else {
                    $('#gbox_').before( $('<button class="button" type="button" value="Edit">Edit</button>') );
                }

            }
        });
    });



当我单击一个项目时,我得到了按钮,但是对于每个选定的项目:

对于每个选定的元素,我都得到了按钮

当我全选时,我没有得到任何按钮。为什么?

任何帮助表示赞赏!谢谢你,对不起我的英语不好。

4

2 回答 2

1

你会想听听这个onSelectAll事件。

于 2013-04-22T13:04:55.963 回答
0

如果我理解你的问题。要将按钮添加到单击的项目,您必须使用以下代码:

$(function (e) {
            tableToGrid(".mytable", {
                autowidth:true,
                pager: '#pager',
                rowNum: 20,
                viewrecords: true,
                loadui: true,
                rowList: [10,20,50],
                multiselect: true,
                caption: "Multi Select Example",
                onSelectRow: function (id) {
                    var selRows = $(this).jqGrid('getGridParam','selarrrow');
                    if (selRows.length === 0) {
                        $(".button").remove();
                    } else {
                      $(e.target).before( $('<button class="button" type="button" value="Edit">Edit</button>') );
                    }

                }
            });
        });
于 2013-04-22T13:12:20.087 回答