http://www.stepday.com/topic/?873
今天在使用EasyUI的datagrid列表组件想实现一个列表的展现,且列表上方有搜索条件,初始化的时候我是这样配置的:
1.
<table id="tBaoXiuList" title="" class="easyui-datagrid" style="width: 723px; height: auto" url="/AjaxCommon/t_baoxiu_ajax.asp?type=getIndexList" toolbar="#bar_search" pageSize="30" pagination="true" rownumbers="true" fitcolumns="true" singleselect="true">
2.
3.
</table>
这样根据参数是可以查询出数据的。但是当我想根据查询参数进行数据过滤的时候,定然是需要将参数加入到默认url后面去才行的。
开始想到的办法是通过datagri的属性queryParams来实现:
1.
$('#tBaoXiuList').datagrid({
2.
queryParams:{
3.
keyName:keyName,
4.
keyVal:keyVal
5.
}
6.
});
7.
8.
$('#tBaoXiuList').datagrid("reload");
结果发现这样并未将参数传递到后台页面进行数据过滤。
最后想到的方法是先通过datagtrid的options属性找到且url,修改url后通过reload再次请求数据,示例代码如下所示:
1.
var keyName = $("#txtKeyName").combobox("getValue");
2.
var keyVal = $("#txtKeyVal").val();
3.
4.
$('#tBaoXiuList').datagrid('options').url = "/AjaxCommon/t_baoxiu_ajax.asp?type=getIndexList&keyName=" + keyName + "&keyVal=" + escape(keyVal);
5.
$("#tBaoXiuList").datagrid('reload');
示例效果如如下所示:
