我使用的是freejqGrid版本4.13.1。我刚刚添加了过滤器工具栏的代码,该代码正常工作,但搜索后搜索参数消失了。搜索工作和一切,但我想将该文本留在工具栏中,直到使用(x)清除。
$('#jqGrid_destroyed').jqGrid({
url:'/url.php',
height: 'auto',
shrinkToFit: true,
width: Math.floor($(window).width()*1),
datatype: 'json',
mtype: 'POST',
colNames:[
'Flat ID',
'Customer',
'Flat #',
'MiscCode',
'Item Number',
'Item Description',
'plus',
'RevDate',
'Created Date',
'Plate/Flat in QA',
'Computer Files to Waiting Destruct',
'Plates/Flat Destroyed',
'Date Confimation Sent to Customer'
],
colModel:[
{name:'flat_id',hidden:true},
{width:14,name:'Customer'},
{width:10,name:'flat_plate_num'},
{width:13,name:'MiscCode'},
{width:20,name:'item_number'},
{width:45,name:'item_description'},
{width:12,name:'plus'},
{width:16,name:'revdate'},
{width:22,name:'created_date', align: "right", hidden:true},
{width:17,name:'flat_in_qa'},
{width:20,name:'computer_files_to_waiting_destruct'},
{width:25,name:'flat_destroyed'},
{width:20,name:'date_confimation_sent_to_customer', formatter : 'date', formatoptions : {srcformat: "Y-m-d", newformat:"m/d/Y"}}
],
sortname: 'date_confimation_sent_to_customer',
sortorder: 'desc',
viewrecords: true,
gridview: true,
caption: 'Waiting Destruct',
rowNum: 10000,
pager:true,
searching: { defaultSearch: "cn" }
}).jqGrid("filterToolbar");
答案 0 :(得分:3)
免费的jqGrid 4.13.1引入了新功能 - 根据postData.filters
填充过滤器工具栏。请参阅README4.13.1。该功能有一些错误,存在于您的情况下。这些错误在更高版本的免费jqGrid中得到修复。
可以通过使用loadFilterDefaults: false
关闭此功能(使用.jqGrid("filterToolbar", {loadFilterDefaults: false})
或更好,将searching: { defaultSearch: "cn" }
更改为searching: { defaultSearch: "cn", loadFilterDefaults: false }
)。另一方面,我建议你更新到当前发布的免费jqGrid版本:4.13.5或使用GitHub的最新资源。
在许多情况下,搜索选项loadFilterDefaults: false
非常实用。例如,可以使用两个过滤器工具栏和搜索对话框。如果要在过滤器工具栏中设置一些过滤器,然后打开“搜索对话框”,则会在对话框中看到当前过滤器。您可以修改它并应用新过滤器。网格将显示新过滤器,但旧版本的jqGrid仍会在过滤器工具栏中显示旧过滤器。我发布了the old answer,其中显示了如何根据当前使用的过滤器填充过滤器工具栏。如果使用loadFilterDefaults: true
的默认filterToolbar
选项,新版本的免费jqGrid将自动刷新过滤器工具栏 。
还有其他常见情况loadFilterDefaults: true
会有所帮助。例如,可以使用loadonce: true
选项从服务器加载所有JSON数据。免费的jqGrid允许将loadonce: true
选项与forceClientSorting: true
结合使用,以便在数据生效之前应用本地 排序和过滤显示在网格中。它允许加载所有数据,但只显示过滤和排序的数据,并在本地分页数据。要过滤数据,只需设置filters
的{{1}}属性即可。使用postData
使用默认filterToolbar
选项时,会看到当前应用的过滤器,这可能对用户有所帮助。