easyui datagrid 发送两次请求
场景:
初始化表格时不加载数据,在事件触发时加载表格数据,代码如下:
// 初始化表格
dg=$('#dg').datagrid({
url : '', // 初始化表格时不加载数据
fit : true,
fitColumns : true,
border : false,
striped:true,
idField : 'id',
pagination:true,
rownumbers:true,
singleSelect:true,
pageNumber:1,
pageSize : 30,
pageList : [ 20, 30, 40, 50 ],
columns:[[ -- 此处省略 --]],
enableHeaderClickMenu: true,
enableHeaderContextMenu: true,
enableRowContextMenu: false
});
// 查询
function query(){
var url = "www.baidu.com"; // 查询地址
var obj = {}; // 查询参数
dg.datagrid({url:url , queryParams: obj});
}
// 在事件触发时调用查询方法
query();
以上代码的运行结果偶尔会出现调用两次查询
解决方式,修改如下:
// 查询
function query(){
var url = "www.baidu.com"; // 查询地址
var obj = {}; // 查询参数
// 将加载数据延迟100ms
setTimeout(() => {
dg.datagrid({url:url , queryParams: obj});
}, 100);
}
将加载数据延迟100ms,即可避免两次查询
来源:CSDN
作者:石头0_0
链接:https://blog.csdn.net/qq1150232675/article/details/104652086