JQuery EasyUI 加载两次url的原因分析及解决方案

1、传统方式

<span style="font-size:18px;">$(function () {
var url = "../Source/Query/jhDataQry.ashx?action=query";
$(dg).datagrid({
url: url,
queryParams: {
qsrq: qsrq,
zzrq: zzrq
}
});
}) 

<table id="DataGrid" class="easyui-datagrid" fit="true" border="false" toolbar="#TBar" pagination="true"
data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh', queryParams: { 'action': 'query'}"
rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">
<thead>
<tr>
</tr>
</thead>
</table></span>

2、原因分析及解决方案

html代码中利用class声明了datagrid,导致easyUI解析class代码的时候先解析class声明中的datagrid,这样组件就请求了一次url;然后又调用js初始化代码请求一次url。这样导致了重复加载,解决的方法就是只用一种初始化方法来声明easyUI组件以避免重复的提交请求,即删除html中的class声明(class="easyui-datagrid"),修改后的代码如下:

<span style="font-size:18px;"><table id="DataGrid" fit="true" border="false" toolbar="#TBar" pagination="true"
data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh'"
rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">
<thead>
<tr>
</tr>
</thead>
</table></span>
(0)

相关推荐

  • 浅谈EasyUi ComBotree树修改 父节点选择的问题

    本人在使用 Easy UI 期间发现了一个不太适合项目的bug,可能也不算bug把 . 毕竟不同项目背景 取舍不同. 我在做网元树选择的时候  发现当选取父节点后,子节点都会被选择  返回  .但是如果我们选中父节点后没有必要选择子节点. 故对源脚本作适当修改 下拉框树修改 父节点选中后只显示父节点  取消返回子节点 修改方法 找到树的选择函数 进行遍历判断  查找关键字 combotree multiple 大约行数 10564 function _7d5(_7d6) { var opts=$

  • Jquery EasyUI中弹出确认对话框以及加载效果示例代码

    复制代码 代码如下: //confirm function Confirm(msg, control) {    $.messager.confirm("确认", msg, function (r) {        if (r) {            return true;        }    });    return false;} 复制代码 代码如下: //Loadfunction Load() {    $("<div class=\"da

  • EasyUi combotree 实现动态加载树节点

    推荐阅读: 简介EasyUI datagrid editor combogrid搜索框的实现 EasyUi中的Combogrid 实现分页和动态搜索远程数据 easyui 1.2.4例子中并没有给出动态加载树节点的例子,只好自己研究. 从源码中可知可以看出combotree 是继承 combo 和 tree两个控件,所以在展开其下级子节点时,把combotree内置的tree的options选项的url重置成一个动态取选择值的url,代码如下: $('#cc').combotree({ url:

  • EasyUI 中combotree 默认不能选择父节点的实现方法

    这需要添加如下字段就行,搜了半天,说什么判断是不是子节点什么的,都是胡扯! onlyLeafCheck:true, //病因分类 $('#artReason').combotree({ width:200, method:'GET', //url: '${ctx}/business/dict/json/DicEtilolgy', data:DicEtilolgy_data, idField : 'id', textFiled : 'name', parentField : 'pid', anim

  • jQuery EasyUI API 中文文档 - ComboTree组合树

    扩展自 $.fn.combo.defaults 和 $.fn.tree.defaults.用 $.fn.combotree.defaults 重写了defaults. 依赖 combo tree 用法 <select id="cc" style="width:200px;"></select> <input id="cc" value="01"> 复制代码 代码如下: $('#cc').co

  • EASYUI TREEGRID异步加载数据实现方法

    官方提供的treegrid的ex 我给大家贴出来看看吧: 复制代码 代码如下: $(function(){ $('#tt').treegrid({ url:'treegrid_data3.json', onAfterEdit:function(row,changes){ alert(row.name); } }); }) 这个是页面初始化的. 看看他的JSON: 复制代码 代码如下: {"total":117,"rows":[ <SPAN style=&quo

  • jQuery Easyui 下拉树组件combotree

    jQuery EasyUI 组合树(ComboTree) 和组合框的用法差不多,只是在显示上有点差别:一个显示成树状结构,一个显示成列表结构. 项目中做角色授权时,需要做一个下拉框带树结构的 并且可以多选的组件,就想到了easyui的combotree,有关这个组件的用法废话不多说,直接上代码 $('#bianhao').combotree({ url : urlg2 + '/tbdefaultroll/selectByLevel?belongLevel=' + $('#jibie').comb

  • EasyUI的treegrid组件动态加载数据问题的解决办法

    搜遍了treegrid源码和文档发现treegrid是扩展自datagrid和tree的,不过以往利用datagrid的reload方法加参数的方式加载查询结果数据,可是treegrid却只执行reload不能加载带参数的查询结果,可能是做了限制,如下代码不能加载查询结果: 复制代码 代码如下: <table id='treegrid' class='easyui-treegrid' url='/User/List'></table>$('#treegrid').treegrid(

  • easyui中combotree循环获取父节点至根节点并输出路径实现方法

    前台页面: <pre name="code" class="html"><td style="height: 35px" colspan="7"> <input id="fm_AEType" class="easyui-combotree" style="width: 240px" /> <label id="fm_

  • easyui combotree加载静态数据问题(选不上)解决方法

    在今天的开发中遇到一个奇怪的问题.虽然已经被我解决但还是百思不得其解,决定记录一下,看看有没有大神能给我答案. 问题重现: 由于我有4个combotree需要加载数据,但是我又不想每次初始化一个combotree就去访问服务器加载一下数据,于是我将加载数据过程写成这样 $.post('xxxurl',function(data){ $('#inputTree0').combotree('loadData',data); $('#inputTree1').combotree('loadData',

随机推荐