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');
示例效果如如下所示:
