zoukankan      html  css  js  c++  java
  • 解决JQuery EasyUI 加载两次url的问题

    1、传统方式

     1  $(function () {
     2             var url = "../Source/Query/jhDataQry.ashx?action=query";
     3             $(dg).datagrid({
     4                 url: url,
     5                 queryParams: {
     6                     qsrq: qsrq,
     7                     zzrq: zzrq
     8                 }
     9             });
    10         })
    11 
    12  <table id="DataGrid" class="easyui-datagrid" fit="true" border="false" toolbar="#TBar" pagination="true" 
    13           data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh', queryParams: { 'action': 'query'}" 
    14           rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">  
    15         <thead>  
    16             <tr>
    17             </tr>  
    18         </thead>  
    19     </table>  

    2、原因分析及解决方案

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

    1 <table id="DataGrid"  fit="true" border="false" toolbar="#TBar" pagination="true" 
    2 13           data-options="pageSize:20,pageList: [10, 20, 30, 40, 50,100,5000],idField:'chjid',sortName:'chjbh'" 
    3 14           rownumbers="true" singleSelect="true" url="../Source/JiChu/chjdoc.ashx">  
    4 15         <thead>  
    5 16             <tr>
    6 17             </tr>  
    7 18         </thead>  
    8 19     </table>  
  • 相关阅读:
    走进AngularJs(二) ng模板中常用指令的使用方式
    mysql知识汇总
    存储动态数据时,数据库的设计方法
    js判断密码强度
    svg―Raphael.js Library(一)
    常用js代码
    IE6实现图片或背景的圆角效果
    巧用css border
    IE6下的效果
    理解盒模型
  • 原文地址:https://www.cnblogs.com/easypass/p/2820996.html
Copyright © 2011-2022 走看看