就我所知,原因有二:
一:重複初始化
1、傳統方式
檢視文字列印
1$(function
()
9});
10})
1112
"datagrid"
class
="easyui-datagrid"
fit=
"true"
border
="false"
*******=
"#tbar"
pagination=
"true"
13data-options=
"pagesize:20,pagelist: [10, 20, 30, 40, 50,100,5000],idfield:'chjid',sortname:'chjbh', queryparams: "
14rownumbers=
"true"
singleselect=
"true"
url=
"../source/jichu/chjdoc.ashx"
>
1516
171819
2、原因分析及解決方案
html**中利用class宣告了datagrid,導致easyui解析class**的時候先解析class宣告中的datagrid,這樣元件就請求了一次url;然後又呼叫js初始化**請求一次url。這樣導致了重複載入,解決的方法就是只用一種初始化方法來宣告easyui元件以避免重複的提交請求,即刪除html中的class宣告(class="easyui-datagrid"),修改後的**如下:
檢視文字列印
1"datagrid"
fit=
"true"
border
="false"
*******=
"#tbar"
pagination=
"true"213
data-options=
"pagesize:20,pagelist: [10, 20, 30, 40, 50,100,5000],idfield:'chjid',sortname:'chjbh'"314
rownumbers=
"true"
singleselect=
"true"
url=
"../source/jichu/chjdoc.ashx"
> 415
516617
718819
二:分頁出錯
因為碰見乙個非常奇怪的問題,乙個頁面的datagrid正常,另乙個頁面的datagrid兩次呼叫action**,比較兩個頁面datagrid的使用方法,並沒有不同。後經仔細debug,發現問題所在:bug出在分頁上。
因為兩個頁面的datagrid都有分頁,所以在action中生成乙個page物件,page物件中total由dao元件設定,正常的頁面page設定正確,另乙個頁面page中的total變成了0,因為total=頁大小*(頁數-1)+最後也記錄數,我估計因為此導致**判斷分頁設定變化了,再一次提交**重新整理資料。
easyui 中重複載入兩次url
一直在使用easyui中,忽視了官網上的小細節,類似於datagrid combobox 等元件在使用的時候,它的資料載入方式分為兩種 官網中 在html中,比如 table id dg title 貨主會員管理 class easyui datagrid fitcolumns true pagin...
關於重複提交
前段時間和朋友郵件討論過頁面重複提交的問題,郵件記錄如下。問題 頁面保證是保證的一部分。頁面機制我這邊採用的是操作結束前不能重做,服務端結束返回資訊後,適當條件下 伺服器忙 是允許重新操作的。你說的唯一值保證頁面不重複的方法,可以本頁面再次提交呢?解決辦法 哈哈,還是流程圖吧,有的時候更容易說清楚問...
防止重複提交
在jsp頁面的form中,新增 然後在提交的action類中 suppresswarnings unchecked scope prototype controller results parentpackage default interceptorrefs value interceptorre...