JQGrid:通过post获取JQGrid中的多个选中行值

时间:2012-04-12 09:46:49

标签: php javascript database jqgrid checkbox

我的php文件中有一个JQGrid,我放在一个表单中。在提交表单时,我只想要来自JQGrid的检查值。

<script type="text/javascript">
    $(function() {
        $("#list1").jqGrid({
            url:'revMemberJson.php',
            datatype: 'json',
            mtype: 'GET',
            loadonce: true,
            // jsonReader: { repeatitems: false },
            colNames:['Name','Mobile'],
            colModel :[ 
                {name:'name', index:'name',width: 100,searchoptions: { sopt: ['eq', 'ne','cn']}}, 
                {name:'mobile', index:'mobile',search: false,width: 120}
            ],
            pager: '#pager',
            rowNum: 5,
            rowList:[5,20,30],
            rownumbers: true,
            multiselect:true,
            sortname: 'id',
            sortorder: 'desc',
            viewrecords: true,
            height: 'auto',
            width: 420, 
            shrinkToFit: false,
            gridview: true,
            caption: 'Members'
        });
        jQuery("#list1").jqGrid('navGrid','#pager',{edit:false,add:false,del:false});

    });

    var myGrid = $('#list1'),
    selRowId = myGrid.jqGrid ('getGridParam', 'selrow'),
    celValue = myGrid.jqGrid ('getCell', selRowId, 'mobile');

</script>  

我已经使用以下代码来获取选中的值,但所有内容都是在java脚本中生成的。但我必须获得更新数据库的值。所以我需要通过邮寄获得价值。

请提供方法..

1 个答案:

答案 0 :(得分:21)

你应该使用

var selRowIds = myGrid.jqGrid ('getGridParam', 'selarrrow');

insteda

var selRowId = myGrid.jqGrid ('getGridParam', 'selrow');

获取包含所选行ID的数组。您可以使用JSON.stringify(selRowIds)selRowIds.join(',')以易于发送到服务器的形式转换数组。

我认为您可以在the answer中找到一些其他信息(请参阅the demo)。