您可以使用
formatter: function (cellvalue, options, rowdata) {
if (cellvalue == 0) {
return "<span class=\"ui-icon ui-icon-close\"></span>";
} else {
return "<span class=\"ui-icon ui-icon-check\"></span>";
}
},
edittype: 'checkbox', editoptions: {value:
"<span class=\"ui-icon ui-icon-check\"></span>:<span class=\"ui-icon ui-icon-close\"></span>"}
或者更好地使用no editoptions: { value: ...
,但使用formatter
里面有以下值之一:false
, 0
, no
, off
, undefined
. See 线条 https://github.com/tonytomov/jqGrid/blob/v4.4.1/js/grid.formedit.js#L607jqGrid代码
if(tmp.search(/(false|0|no|off|undefined)/i)<0 && tmp!=="") {
$("#"+nm,"#"+fmid)[$t.p.useProp ? 'prop': 'attr']("checked",true);
$("#"+nm,"#"+fmid)[$t.p.useProp ? 'prop': 'attr']("defaultChecked",true); //ie
} else {
$("#"+nm,"#"+fmid)[$t.p.useProp ? 'prop': 'attr']("checked", false);
$("#"+nm,"#"+fmid)[$t.p.useProp ? 'prop': 'attr']("defaultChecked", false); //ie
}
的解释。例如格式化程序
formatter: function (cellvalue, options, rowdata) {
if (cellvalue == 0) {
return "<span class=\"ui-icon ui-icon-close\">0</span>";
} else {
return "<span class=\"ui-icon ui-icon-check\">1</span>";
}
}
(没有editoptions: { value: ...
)应该可以解决你的问题。