javascript - 使用 beforeCellEdit 事件阻止 jqGrid 进入编辑单元格?

标签 javascript jquery jqgrid

在捕获 beforeCellEdit 事件时,是否可以以某种方式阻止单元格进入编辑模式?

beforeEditCell: function (rowid, cellname, value, irow, icol) {
    if (cellname != 'aSpecificCol')
        return;

    var grid = $("#grid");

    if (aCondition == "something")
        grid.setColProp('aSpecificCol', { editable: false });
    else
        grid.setColProp('aSpecificCol', { editable: true });
 }

事件触发,但列属性的设置似乎没有更改编辑模式。

最佳答案

方法beforeEditCell将在编辑过程中被调用。它的存在主要是为了在新创建的输入或选择元素中进行一些初始化。

如果您需要防止某些单元格在单元格编辑模式下进行编辑,我建议您有时之前在单元格中设置 "not-editable-cell" 类(例如在 cellattr 或在 loadComplete 中)或使用 beforeSelectRow 为某些单元格返回 falsebeforeSelectRow 返回 false 单元格将不会被编辑。

beforeSelectRow: function (rowid, e) {
    var $td = $(e.target).closest("td"), iCol = $.jgrid.getCellIndex($td[0]);
    if (/* test some rules here */) {
        return false; // prevent selection and so the editing of the cell
    }
}

关于javascript - 使用 beforeCellEdit 事件阻止 jqGrid 进入编辑单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10104251/

相关文章:

javascript - 使用 Jquery 在下拉菜单中查找文本并将其设置为“选定”

javascript - 点击下拉菜单

javascript - jquery 一次切换一个 div

java - 从另一个表填充 SQL 表列

javascript - 使用 javascript 访问 jqgrid 元素

javascript - 为什么我无法将日期与 moment js 进行比较?

javascript - 获取多边形所有点的数组 - Google Maps Drawing Tool API-3

jquery - 如何创建一个所有数据都可以被谷歌索引的分页网格?

javascript - 使用 AppleScript 和 JavaScript 填充输入字段

jquery - 删除 on 时更改每个 div 上的背景颜色