我有一個帶有高級過濾器的jqGrid 4.3.1。一些布爾類型的列如Yes/No types,當創建一個新的高級過濾器行時選擇列類型時,我會顯示一個下拉列表。 例如說第2列是IsActive(布爾)類型,當選擇這個時,我顯示了一個下拉菜單而不是文本框。 將覆蓋jqGrid的先進過濾器的代碼如下: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前一個版本),以做工精細 不知道是什麼原因造成的問題,但現在我的下拉菜單顯示爲空白。 任何幫助表示讚賞!
感謝您的回答。我已經添加了一個新的問題,我真的很掙扎..http://stackoverflow.com/questions/10579864/jqgrid-column-selector-inline-rather-than-in-dialog – chugh97
我的構建選擇函數映射到一個函數其中有以下實現返回「:所有;真:真;假:假」;; – chugh97
@ chugh97:哪種感覺必須從服務器獲取靜態數據(來自URL'dataUrl'),然後將其轉換爲帶有靜態值的選擇?此外,'buildSelect'必須產生HTML片段''而不是字符串'':All; true:True; false:False「 '用作'value'屬性的值。搜索對話框中':All;'的用法也不好。一切似乎都很奇怪...... – Oleg