easyui datagrid 发送两次请求

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,即可避免两次查询

你可能感兴趣的:(前端,easyui,datagrid)