如何以编程方式选择JQGrid的顶行。我希望在页面上打开顶行时已经选中了该行。我的网格按描述性列排序,因此第一行的id可以是任意数字。我知道使用的方法我只是不知道如何获得顶部(第一)行的rowid。方法是:
jQuery("#mygrid").setSelection(rowid, true);
答案 0 :(得分:18)
上面的答案很接近,但案件已经结束了。它应该是:
$("#mygrid").getDataIDs()[0];
这应该可以正常工作。
答案 1 :(得分:9)
或者,如果不使用jqGrid API,您应该能够通过导航DOM来检索顶行:
var top_rowid = $('#mygrid tbody:first-child tr:first').attr('id');
答案 2 :(得分:8)
jqGrid支持只需要正确调用的setSelection
方法:
var grid = jQuery("#mygrid"),
ids = grid.jqGrid("getDataIDs");
if(ids && ids.length > 0)
grid.jqGrid("setSelection", ids[0]);
答案 3 :(得分:6)
$("#mygrid").getDataIDs()[0]; // SO now requires 30 characters, so....
答案 4 :(得分:1)
表格有标题行时的完整代码:
var top_rowid = $('#mygrid tr:nth-child(2)').attr('id');
$("#mygrid").setSelection(top_rowid, true);
答案 5 :(得分:1)
我使用了以下内容:
var grid = $('#list');
grid.jqGrid({
...
gridComplete: function() {
var ids = grid.jqGrid("getDataIDs");
if(ids.length > 0) {
grid.jqGrid("setSelection", ids[0]);
}
},
...
});
答案 6 :(得分:0)
如果您有标题行,请尝试以下操作:
var top_rowid = $('#mygrid tbody:first-child tr:nth-child(2)').attr('id');
答案 7 :(得分:0)
如果您有标题行,请尝试以下操作:
$('#tb_par tbody:first-child tr:nth-child(2)').trigger("click");
如果不是:
$('#mygrid tbody:first-child tr:first').trigger("click");
它会直接触发JqGrid的点击事件。