今天使用EasyUI的datagrid时发现首次打开页面时onLoadSuccess方法执行了两次。后来发现主要问题是datagrid被初始化了两次。主要原因是一开始html中声明了dg为easyui-datagrid控件。
<table align="center" id="dg" class="easyui-datagrid" title="xxx" width="100%" >
而用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) {
}
});
}
解决的方法就是在html代码中将
<table align="center" id="dg" class="easyui-datagrid" title="xxx" width="100%" >
改为
<table align="center" id="dg" title="xxx" width="100%" >
这样就不会重复初两次初始化控件了!