我正在使用生成交互式tables called jqGrid。
的jQuery插件我想使用这个“editfunc”(页面下方的2 / 3rds或3/4),但我找不到如何在任何地方实现它的明确示例。我尝试了几件不同的事情,所有这些都让我彻底失败了。
要清楚,生成的表看起来像这样:
下面的栏被称为“navpbar”或“pager”,你将它作为一个单独的DIV实现,API和文档对于我究竟如何将自定义函数放到这些按钮上非常不清楚(比如我自己) “添加”,“编辑”,“删除”等...我可以使默认功能正常工作,但我无法通过websearches,本网站或API文档找到任何实际实现的内容。
答案 0 :(得分:3)
jqGrid已经开源了。它有助于直接在代码中清除所有问题。以the lines为例。您将看到navGrid
点击导航器的“编辑”按钮时所做的事情:
var sr = $t.p.selrow;
if (sr) {
if($.isFunction( o.editfunc ) ) {
o.editfunc(sr);
} else {
$($t).jqGrid("editGridRow",sr,pEdit);
}
} else {
$.jgrid.viewModal("#"+alertIDs.themodal,{gbox:"#gbox_"+$t.p.id,jqm:true});
$("#jqg_alrt").focus();
}
因此,如果您定义editfunc
回调函数,则会调用函数,并将所选行的ID作为参数,而不是editGridRow创建编辑对话框。
方法editGridRow具有许多自定义功能。 navGrid的prmEdit
参数允许指定editGridRow使用的任何选项。
如果您不想显示编辑表单并显示任何其他GUI,则可以使用editfunc
回调函数。例如:
$("#list").jqGrid('navGrid', '#pager', {
editfunc: function (rowid) {
alert('The "Edit" button was clicked with rowid=' + rowid);
}
});
见the demo。选择一行并单击“编辑”按钮,您将看到alert
而不是标准编辑表单。