0

我正在使用自定义格式化程序在我的网格的一列中创建超链接。

在我的代码中,有时我需要禁用选定的行。行禁用按我的意愿工作,但未禁用该行的超链接。我无法选择该行,并且所有其他列值都显示为灰色,表示该行已被禁用。唯一内容不改变颜色的列是具有链接的列。

关于如何禁用链接的任何想法?

这是我的 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 的值的所有行中禁用链接

4

1 回答 1

0

您可以尝试使用此处此处此处描述的格式化程序onClick回调。它为您提供最大的灵活性。在回调内部,您可以测试类似的东西,并且在这种情况下什么也不做。dynamicLinkonClick$(e.target).closest("tr.jqgrow").hasClass("not-editable-row")

于 2013-07-26T15:21:09.750 回答