Jqgrid 如何为编辑网格窗口列设置只读属性?

Jqgrid 如何为编辑网格窗口列设置只读属性?,jqgrid,struts2,Jqgrid,Struts2,我正在使用struts2和hibernate进行我的项目,我正在使用jqgrid进行数据显示。现在我想在editGrid窗口上为id字段设置只读属性。但不适用于添加窗口。我的示例代码 ...... 我可以调用导航编辑选项中的beforeShowForm和afterShowForm函数吗?我不是struts2 defeloper,因此我的建议可能不正确。不过,您可以尝试直接在导航编辑选项中包含内联JavaScript代码: navigatorViewOptions="

我正在使用struts2hibernate进行我的项目,我正在使用jqgrid进行数据显示。现在我想在editGrid窗口上为id字段设置只读属性。但不适用于添加窗口。我的示例代码


......

我可以调用导航编辑选项中的
beforeShowForm
afterShowForm
函数吗?

我不是struts2 defeloper,因此我的建议可能不正确。不过,您可以尝试直接在导航编辑选项中包含内联JavaScript代码:

navigatorViewOptions="
                {
                    viewPagerButtons:false,
                    recreateForm: true,
                    checkOnUpdate: true,
                    beforeShowForm: function ($form) {
                        alert("inside of beforeShowForm function");
                    }
                }"
navigatorViewOptions="
                {
                    viewPagerButtons:false,
                    recreateForm: true,
                    checkOnUpdate: true,
                    beforeShowForm: myBeforeShowForm
                }"
它看起来很接近文档中的代码。我希望它能起作用

或者,您可以定义一些全局函数,如


var myBeforeShowForm=函数($form){
警报(“beforeShowForm函数内部”);
};
并在导航编辑选项的内部使用全局
myBeforeShowForm

navigatorViewOptions="
                {
                    viewPagerButtons:false,
                    recreateForm: true,
                    checkOnUpdate: true,
                    beforeShowForm: function ($form) {
                        alert("inside of beforeShowForm function");
                    }
                }"
navigatorViewOptions="
                {
                    viewPagerButtons:false,
                    recreateForm: true,
                    checkOnUpdate: true,
                    beforeShowForm: myBeforeShowForm
                }"

(与启用的
datePick
功能的代码比较)

hello Oleg。谢谢你的回答。我可以知道什么是形式吗?是网格id(gridtable)还是html表单id()?@Sugunas:不客气!对不起,我不明白你的问题:“我可以知道什么是形式吗?”你是什么意思?如果您的意思是
$form
beforeShowForm的
参数,那么它就是表单的jQuery包装器:比如
$(“#”+formId)
@sugunas:欢迎您!在ShowForm
之前定义
的主要问题现在解决了吗?我发布的两种方法中哪一种有效,而你现在使用的是哪一种?如果问题解决了,你应该给出答案。现在已经解决了。我在用第二种方法。现在我通过$(“#gridtable”).jqGrid('setColProp','id',{editoptions:{readonly:'readonly'})为我的编辑网格窗口列设置readonly属性;再次感谢您。@Sugunas:不客气!你能告诉我答案吗?