当前位置: 首页 > 面试题库 >

jQGrid,如何使列在添加对话框中可编辑,但在(​​内联)编辑期间不可编辑

於宾白
2023-03-14
问题内容

我有一个jQGrid的列,我只想在添加新行时可编辑。

我已经看到了在对话框中同时进行编辑和添加时如何执行此操作的示例,但是是否可以通过内联编辑来执行此操作?

我试过在beforeShowForm:中使用grid.setColProp(),但这是行不通的(该列保持只读状态,并且在添加对话框中不存在)。


问题答案:

在旧示例中],可以在“添加”或“编辑”对话框中修改的所有字段都具有属性editable:true。仅应在“添加”对话框中显示的字段将被隐藏在beforeShowForm事件句柄内。以相同的方式,我们可以在调用editRow方法之前将某些字段临时 切换到,并editable:false在调用editable:true之后立即重置为立即返回:

onSelectRow: function(id) {
    if (id && id !== lastSel) {
        grid.jqGrid('restoreRow',lastSel);
        var cm = grid.jqGrid('getColProp','Name');
        cm.editable = false;
        grid.jqGrid('editRow', id, true, null, null, 'clientArray');
        cm.editable = true;
        lastSel = id;
    }
}

更新: 免费jqGrid允许定义editable为回调函数。它允许使该列在某些行中可编辑,而对其他行则不可编辑。



 类似资料:
  • 是否可以使可单击但不可编辑。 我不希望它是可编辑的(键盘也不应该出现,我们也不应该改变提示) 实际上,我只想使用编辑文本作为带有提示的图像(不能更改)。我知道实际的方法是使用一个和一个,但我希望它尝试使用,因为这样我将只使用一个视图,而不是2个。而且每件事都是动态的,所以没有XML。 对于上述需求,XML中的解决方案是android:editable=“false”,但我想在Java中使用它。 但

  • 问题内容: 有什么办法可以在jtable中动态制作不可编辑的单元格吗?每当用户提供类似false的输入时,我都想创建不可编辑的单元格…我已经在DefaultTableModel isCellEditable方法中看到过,但是如果我想使用它,则每次创建新对象时都会创建它,因此我想动态更改它为不可编辑。有人可以帮我吗?。谢谢 问题答案: 其他班级 然后,您可以通过使用存储的myModel变量并在其上调

  • 我正在使用免费的jqGrid 4.12.1。我想在网格中添加、编辑和删除行,并希望为每个操作进行服务器端调用。我添加了编辑URL和“操作”格式化程序,如下所示, 我在下面添加“inlineNav”, 上面添加的“inlineNav”没有任何效果,因为没有在添加新行或删除现有行时进行服务器端调用。只有在编辑的情况下才进行服务器端调用,并且该调用也不会通过上面的“inlineNav”代码进行。因为即使

  • 在我的应用程序中,有一个JComboBox,其中包含大约200个条目。使用该应用程序的人抱怨说,即使他们确切地知道列表的最后一个元素是什么,也必须一直滚动到底部是令人沮丧的。 所以我把JComboBox设置成可编辑的,这样他们就可以输入最后一个元素了。但是,我的数据库不接受该组合框的下拉列表中没有的任何值。 有没有办法使JComboBox仅“可键入”而不是“可编辑”,因此它将允许您键入值,但前提是

  • 我试图在对话框中创建一个编辑文本框,用于输入密码。当我在做的时候,我不能做。我是这方面的初学者。请帮我做这件事。 形象 我想得到作为

  • 我正在使用金属 L 但当我这样做时,cb。setEditable(false),框内出现一个附加边框(在图片“下拉”中变为红色,您可以在名为“固定”的图片中看到原始颜色)。虽然我尝试设置边界,也尝试使用自己的CellRenderer,但边界仍然会被绘制。在我看来,不需要的边界不是来自细胞渲染器。当我试图从cb本身操纵边框时(请参见注释/),它只添加/删除了一个额外的外部边框。编辑部分似乎也不对我负