最近项目调试的时候在firebug中发现EasyUI的组件异步加载时总是加载两次url属性的问题,代码如下:
$(function(){ $('#comb').combobox({ url:'/area/list' }); }); <input id="comb" class="e a syui-combobox" type="text" name="comb" />
从以上的代码可以看到页面初始化的时候加载一次combobox组件的url,
html代码中也利用class声明了一次combobox,这样就导致,easyUI解析html代码的时候先解析class声明中的combobox组件请求了一次url然后又调用了js中初始化的代码初始化一次数据,导致重复加载,避免的方法就是只用一种初始化方法来声明easyUI组件,避免重复的提交请求
修改后的代码如下:
$(function(){ $('#comb').combobox({ url:'/area/list' }); }); <input id="comb" type="text" name="comb" />