ホームページ > 記事 > ウェブフロントエンド > JQuery EasyUI が URL を 2 回ロードする理由の分析と解決策_jquery
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 コード内のクラスを使用して宣言されます。easyUI がクラス コードを解析するとき、コンポーネントは URL を要求するために、まずクラス宣言内のデータグリッドを解析します。次に、JS 初期化コードを呼び出して URL を要求します。 。これにより、繰り返しロードが発生します。解決策は、繰り返しの送信リクエストを避けるために、easyUI コンポーネントを宣言する初期化メソッドを 1 つだけ使用することです。つまり、HTML 内のクラス宣言 (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>