【问题标题】:how to selected row in jqgrid如何在jqgrid中选择行
【发布时间】:2012-05-27 08:01:48
【问题描述】:

我在表单中有 jqgrid,我希望当用户单击该行时选择该行,但通过此代码仅选择第一行,当用户单击第 n 行时选择一个。我写了这段代码

var gridItem = $('#listItem');
gridItem.jqGrid({
    url: 'jQGridHandler.ashx',
    postData: { ActionPage: 'ClearanceItems', Action: 'Fill', requestId: rowid },
    ajaxGridOptions: { cache: false },
    datatype: 'json',
    height: 200,
    colNames: ['REQUEST_ID','ITEM_NO','GOODS_DESCRIPTION','QUANTITY'],
    colModel: [
        { name: 'REQUEST_ID', width: 100, sortable: true },
        { name: 'ITEM_NO', width: 200, sortable: true },
        { name: 'GOODS_DESCRIPTION', width: 100, sortable: true },
        { name: 'QUANTITY', width: 100, sortable: true }
    ],
    gridview: true,
    rowNum: 20,
    rowList: [20, 40, 60],
    pager: '#pagerItem',
    viewrecords: true,
    sortorder: 'ASC',
    rownumbers: true,
});
gridItem.jqGrid('navGrid', '#pagerItem', { add: false, edit: false, del: true }, {}, {},
    {}, { multipleSearch: true, overlay: false, width: 460 });

谢谢你的帮助。

【问题讨论】:

  • 对不起,我不明白你的要求。 “我希望当用户单击该行时选择该行,但通过此代码仅选择第一行,并且当用户单击第 n 行时选择一个”可以用许多不同的方式解释。什么是“第一行”?是第一个可见行还是用户选择的第一行?如果应该像往常一样选择用户单击的第一行,如果用户单击另一行应该是什么行为?应该什么都不会发生吗?我不知道“用户在第 n 行第一个选择中单击”是什么意思。
  • @Oleg :谢谢,我在 GridEx 中有示例 3 行,当用户单击 row3 时,选择了第 1 行,表示用户单击的每一行都选中了第 1 行。谢谢你的帮助。

标签: jquery jqgrid jqgrid-asp.net jqgrid-formatter


【解决方案1】:

如果在选择一行时将选择另一行(通常是网格中的第一行),那么我可以假设您在填充数据时遇到问题。如果所有行都具有相同的id 值,那么所有<tr>(代表行)都将具有相同的ID。 HTML 不允许 id 重复。

因此您应该更改生成url: 'jQGridHandler.ashx' 的数据。如果'REQUEST_ID' 列中的值是唯一的,您可以将key: true 作为'REQUEST_ID' 列的附加属性包括在内。在这种情况下,列中的值将用作 rowid。

【讨论】:

    【解决方案2】:

    我不确定你的意思是不是“多选”,如果是,你可以将网格的选项“多选”设置为true。像这样:

    $("#listitem").setGridParam({"multiselect":true});
    

    或设置初始化选项:

    multiselect : true
    

    【讨论】:

    • 我不想选择多行,我只想选择行用户点击这个。
    猜你喜欢
    • 2012-05-09
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    • 2011-05-11
    相关资源
    最近更新 更多