我有jqGrid的本地数据,我为布尔列制作自定义格式化程序。像
这样的东西var boolFormatter = function (cellvalue, opt, rowObj) {
if (cellvalue == null) return "";
return (cellvalue == true)
? return "Yes"
: return "No";
}
我的colmodel喜欢
var colmodel = [
{index: id, name: id, hidden: true}
{index: someProperty, name: someProperty, formatter: boolFormatter}
]
问题是当我为对象调用rowData时,我得到字符串值,即
var rowData = grid.getRowData(1);
var value = rowData["someProperty"];
< =这将返回“是”,“否”或“”而不是true,false或null。
我知道这是内容值,jqGrid有内部数据存储,我相信所有数据都以正常(真,假,值)格式存储。
请帮忙,我怎样才能把它们当成bool。提前谢谢!
答案 0 :(得分:0)
在功能boolFormatter
中,您在""
时返回值cellvalue == null
,在return "Yes"
: return "No"
时返回值cellvalue == true
。这就是您获得string
值的原因。
使用以下
更新您的代码var boolFormatter = function (cellvalue, opt, rowObj) {
if (cellvalue == null) {
return null;
} else {
return (cellvalue == true) ? return true : return false;
}
}