事实上,我有2个Q:
我使用了jqgrid,我有一个带有自定义复选框格式化程序的列(比如Passed
),一个名为ID的cloumn和其他一些列。
问1)我想将ID设置为Passed
列的单元格,它应该是ID
列单元格的值。有什么想法吗?
问2)如何使用jquery更改Passed
列单元格的值?
额外说明: 1)事实上,我在我的MVC 4项目中使用MvcJqGrid,我正在尝试处理这些复选框的更改事件,最终能够获取它们的值并发送给相关的控制器。
2)我的主要问题是我无法根据点击对这些复选框或网格单元格设置正确值或任何值。
现在,作为一个失败的尝试,我的格式化程序是这样的:
function pass(cellvalue, options, rowobject) {
return '<input type="checkbox" id="' + cellvalue + '" checked="checked" onclick="chkChange(\'' + cellvalue + '\', \'#' + cellvalue + '\')" />';
}
现在,我将ID
单元格值推送到Passed
单元格,它按预期工作。
和事件功能:
function chkChange(bval, id) {
if (bval != 'false')
$(id).val('false');
else
$(id).val('true');
}
通过此代码,我无法更改复选框的值。我想也许我应该操纵单元格而不是复选框。如果是这样,这个问题的解决方案似乎就是我Q 2
的答案。
提前致谢。
答案 0 :(得分:0)
我改变了这样的格式化程序:
function pass(cellvalue, options, rowobject) {
return '<input type="checkbox" id="' + cellvalue + '" checked="checked" onclick="chkChange(\'#' + cellvalue + '\')" />';
}
和事件函数如下:
function chkChange(id) {
if ($(id).val() != 'false')
$(id).val('false');
else
$(id).val('true');
}
那该死的虫子消失了......