高度なフィルターを備えたjqGrid 4.3.1があります。はい/いいえ型のようなブール型の列のいくつかは、新しい高度なフィルター行が作成されたときに列の型が選択されたときにドロップダウンを表示します。たとえば、列 2 が IsActive (ブール値) 型であるとします。これを選択すると、テキスト ボックスの代わりにドロップダウンが表示されます。jqGrid の高度なフィルターをオーバーライドするコードは次のとおりです。
var cols = grid.jqGrid("getGridParam", "colModel");
for (var i = 0; i < cols.length; i++) {
if (cols[i].stype && cols[i].stype == "select" && cols[i].searchoptions && cols[i].searchoptions.buildSelect && $.isFunction(cols[i].searchoptions.buildSelect)
&& !cols[i].searchoptions.dataUrl && !cols[i].searchoptions.value) {
cols[i].searchoptions.value = cols[i].searchoptions.buildSelect(null);
}
このコードは、バージョン 4.3 (4.3.1 より前のバージョン) で問題なく動作していました。問題の原因は不明ですが、ドロップダウンが空白になっています。どんな助けでも大歓迎です!