发布:2015/8/11 18:06:00作者:管理员 来源:本站 浏览次数:1693
1、传统方式
$(function () {
var url = "../Source/Query/jhDataQry.ashx?action=query";
$(dg).datagrid({
url: url,
queryParams: {
qsrq: qsrq,
zzrq: zzrq
}
});
})
<table id="DataGrid" class="easyui-datagrid" fit="true" border="false" toolbar="#TBar" pagination="true"
data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh', queryParams: { 'action': 'query'}"
rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">
<thead>
<tr>
</tr>
</thead>
</table>
2、原因分析及解决方案
html代码中利用class声明了datagrid,导致easyUI解析class代码的时候先解析class声明中的datagrid,这样
组件就请求了一次url;然后又调用js初始化代码请求一次url。这样导致了重复加载,解决的方法就是只用一种初始化方法来声明easyUI组件以避免
重复的提交请求,即删除html中的class声明(class="easyui-datagrid"),修改后的代码如下:
<table id="DataGrid" fit="true" border="false" toolbar="#TBar" pagination="true"
13 data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh'"
14 rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">
15 <thead>
16 <tr>
17 </tr>
18 </thead>
19 </table>