JqGrid 自定义搜索filterModel中sopt写法

JqGrid 自定义搜索
从源码中找答案
在用JqGrid写自定义搜索的时候,搜索字段为select 时候,选项sopt 这个咋写都不对,一怒之下查看了这块源码如下
if ($t.sopt.value) {
var oSv = $t.sopt.value;
var elem = document.createElement(“select”);
$(elem).attr({
name: $t.index || $t.name,
id: “sg_” + $t.name
}).attr($t.sopt);
var so, sv, ov;
if (typeof oSv === “string”) {
so = oSv.split(“;”);
for (var k = 0; k < so.length; k++) {
sv = so[k].split(“:”);
ov = document.createElement(“option”);
ov.value = sv[0];
ov.innerHTML = sv[1];
if (sv[1] == $t.defval) {
ov.selected = “selected”;
}
elem.appendChild(ov);
}
} else if (typeof oSv === “object”) {
for (var key in oSv) {
if (oSv.hasOwnProperty(key)) {
i++;
ov = document.createElement(“option”);
ov.value = key;
ov.innerHTML = oSv[key];
if (oSv[key] == $t.defval) {
ov.selected = “selected”;
}
elem.appendChild(ov);
}
}
}
}

sopt 的两种写法
有源码可知:sopt有两种写法

当sopt为字符串的时候写法为
{value : “1:已使用;0:未使用”}

当sopt为对象的时候写法为
sopt: {value :{”:’全部’,1:’已使用’,0:’未使用’,2:’使用中’,3:’已过期’}},

官网wiki

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理