今天使用EasyUI的datagrid时发现首次打开页面时onLoadSuccess方法执行了两次。后来发现主要问题是datagrid被初始化了两次。
主要原因是一开始标签元素中声明了class="easyui-datagrid" 。
<table align="center" id="dg" class="easyui-datagrid" >稍后又用js创建了datagrid:
$(document).ready(init);
function init() {
$('#dg').datagrid({
pageList: [10, 15, 20],
pagination: true,
loadMsg: '数据加载中...',
url: 'xxx.php',
onLoadSuccess: function(data) {
},
onBeforeLoad: function(param) {
}
});
}
解决的方法就是去掉标签class属性里的easyui-datagrid。
例如:
<table align="center" id="dg" class="easyui-datagrid">改为
<table align="center" id="dg" >
这样就不会重复初两次初始化控件了!