Я использую собственный форматтер для создания гиперссылок в одном из столбцов моей сетки.Как отключить гиперссылки в строке 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;
});
});
}
}
}
Я хочу, чтобы ссылки отключены во всех строках, где значение мод столбца = у
спасибо @Oleg! Я попытался использовать doInEachRow, но ничего не происходит. любезно ссылайтесь на мой модифицированный код в редакторе – AbtPst
, нет ли способа изменить значение внутри ячейки? если я могу получить доступ к данным ячейки, могу ли я изменить свойство onclick? Я знаю, что все, что мне нужно сделать, это вернуть false из функции onclick ссылки – AbtPst
@ user2334092: Я имею в виду, что вы должны использовать 'formatter: dynamicLink" вместо "formatter:" showlink "'. Кстати, надеюсь, вы знаете, что для перехода на URL-адрес вы можете просто назначить новое значение 'window.location' или' window.location.href'. Вы можете сделать это внутри обратного вызова onClick. – Oleg