我有一个jqGrid,我希望在页面加载时选择第一行。我发现了几种不同的方法,但它们似乎都不适合我。数据来自ajax调用,因此我可以告诉网格在加载任何数据之前尝试选择第一行。
var reqListGrid = new BaseGrid("#request_list");
reqListGrid.edit_url = '...'
reqListGrid.name = 'Request List'
reqListGrid.colNames = ["Employee", "Code", "Start Date", "Submitted", "Hours"]
reqListGrid.height = '200px';
reqListGrid.width = 'auto';
reqListGrid.colModel = [
{name:'req_emp', ...},
{name:'req_code', ...},
...
];
reqListGrid.gridComplete = function(){
var req_top_row = $("#request_list").getDataIDs()[0];
$("#request_list").setSelection(req_top_row, true);
};
reqListGrid.createGrid();
我在gridComplete方法中设置了断点,但Chrome从未命中过它。有什么提示吗?
答案 0 :(得分:0)
OnGridComplete
您可以使用以下代码:
var firstRowId = $("tr:first","#request_list").attr("id");
$("#request_list").setSelection(firstRowId);
OnGridComplete
的整体代码应如下所示
reqListGrid.gridComplete = function(){
var req_top_row = $("tr:first","#request_list").attr("id");
$("#request_list").setSelection(req_top_row);
};
答案 1 :(得分:0)
gridComplete: function () {
var idarray = jQuery('#jqTable').jqGrid('getDataIDs');
if (idarray.length > 0) {
var firstid = jQuery('#jqTable').jqGrid('getDataIDs')[0];
$("#jqTable").setSelection(firstid);
}
}