如何在jQGrid行中禁用超链接
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在jQGrid行中禁用超链接相关的知识,希望对你有一定的参考价值。
我正在使用自定义格式化程序在我的网格的一列中创建超链接。
在我的代码中,有些情况下我需要禁用所选行。行禁用按我的意愿工作,但不禁用该行的超链接。我无法选择行,所有其他列值显示为灰色,表示该行已禁用。内容不会改变颜色的唯一列是具有链接的列。
关于如何禁用链接的任何想法?
这是我的loadComplete函数:
loadComplete: function (data) {
var ids =jQuery("#list").jqGrid('getDataIDs');
for(var i=0;i < ids.length;i++){
var rowId = ids[i];
var mod = jQuery("#list").jqGrid('getCell',ids[i],'mod');
if(mod=='y'){
jQuery("#jqg_list_"+rowId).attr("disabled", true);
$("#list").jqGrid('setRowData',ids[i],false, {weightfont:'bold',color:'silver'});
var iCol = getColumnIndexByName.call(this, 'adate');
$(this).jqGrid('doInEachRow', function (row, rowId, localRowData) {
$(row.cells[iCol]).children("a").click(function (e) {
e.preventDefault();
// any your code here
alert("No Good");
return false;
});
});
}
}
}
我希望在列mod = y的所有行中禁用链接
答案
您可以尝试使用onClick
格式化程序的dynamicLink
回调描述here,here和here。它为您提供最大的灵活性。在onClick
回调中,你可以测试像$(e.target).closest("tr.jqgrow").hasClass("not-editable-row")
这样的东西,在这种情况下什么都不做。
以上是关于如何在jQGrid行中禁用超链接的主要内容,如果未能解决你的问题,请参考以下文章
ASP.net MVC 代码片段问题中的 Jqgrid 实现