在用JqGrid寫自定義搜索的時候,搜索字段爲select
時候,選項sopt
這個咋寫都不對,一怒之下查看了這塊源碼以下php
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有兩種寫法app
當sopt爲字符串的時候寫法爲code
{value : "1:已使用;0:未使用"}
當sopt爲對象的時候寫法爲對象
sopt: {value :{'':'所有',1:'已使用',0:'未使用',2:'使用中',3:'已過時'}},
官網wiki字符串