我在jsbin上使用以下示例(从@ oleg的示例修改代码)
http://jsbin.com/owitod/18/edit
我有一个jquery-ui对话框,显示一个下拉框,模拟其中一列和一个按钮的过滤器下拉列表。单击该按钮时,警报对话框将显示当前的jqGrid过滤器。但是,当我在对话框内的下拉列表中更改下拉选项时,我也希望更改jqGrid过滤器。
以上演示的示例:
点击显示过滤器并注意:
{ “groupOp”: “AND”, “规则”:[{ “场”: “类别”, “运算”: “当量”, “数据”: “体育”}]}
将对话框中的下拉菜单更改为科学
此时,当我点击显示过滤器时,我希望提醒以下内容
{ “groupOp”: “AND”, “规则”:[{ “场”: “类别”, “运算”: “当量”, “数据”: “科学”}]}
我在代码中尝试了以下内容,但它不起作用:
$("#gs_Category").val($("#mycat").val()); //this doesn't work...
alert(jQuery("#list").jqGrid('getGridParam', 'postData').filters);
答案 0 :(得分:0)
我认为您遇到的错误是尝试设置所选选项。 gs_Category
是一个精选下拉列表。要更改所选的选项,请尝试:
$('#gs_Category').find('option[value="' + $('#mycat').val() + '"]').attr('selected', true);
<强>更新强>
在设置所选值后添加以下行将导致触发网格的过滤器事件(因为您使用的是本地数据类型)。
$('#gs_Category').trigger('change');