1. 程式人生 > >Jquery Easyui Tab中表單重複提交問題解決

Jquery Easyui Tab中表單重複提交問題解決

問題描述:

在Tab中點選新增按鈕,彈出一個window視窗,視窗中表單資料填寫完成後點選提交儲存按鈕會提交兩次資料,如果重新整理整個頁面,重複上面步驟只會提交一次資料。如果關閉Tab子選項卡,重複之前步驟有會提交兩次資料,再次關閉Tab子選項卡,重複之前步驟有會提交三次資料。

問題分析:

window視窗是通過html方式建立的,裡面嵌套了一個form表單,該window視窗預設是隱藏的,通過js開啟該視窗。當開啟Tab子選項卡時,雖然該window視窗是隱藏的,但視窗的html元素已經生成了,且都加了display:none屬性。當直接關閉Tab子選項卡時子選項卡的html元素會被銷燬刪除,但是window視窗的html元素不會被銷燬刪除,依舊保持不變。當再次開啟Tab子選項卡時又會生成window視窗的html元素,這樣就會出現兩個相同的視窗元素,當填好表單資料並點選提交時就會觸發兩次onClick事件。

解決方案:

為tabs新增onClose事件,當檢測到子選項卡關閉的時候通過destroy方法銷燬window視窗的html元素。

$('#tabs').tabs({
    onClose: function(title,index){
        $("#win").window('destroy');
    }
});


相關推薦

Jquery Easyui Tab中表重複提交問題解決

問題描述: 在Tab中點選新增按鈕,彈出一個window視窗,視窗中表單資料填寫完成後點選提交儲存按鈕會提交兩次資料,如果重新整理整個頁面,重複上面步驟只會提交一次資料。如果關閉Tab子選項卡,重複之

F5重新整理-引起表重複提交解決-

一、簡介 Struts2使用token攔截器來檢查表單是否重複提交,採用的是同步令牌的方式。 同步令牌方式:伺服器端在處理到達的請求之前,會將請求中包含的令牌值與儲存在當前使用者會話中的令牌值進行比較,看是否匹配。在處理完該請求後,且在答覆傳送給客戶端之前,將會產生一

easyui關於解決tab新增的頁面通過href載入資料內容的頁面重新整理後form表重複提交的問題;

1.分析 Easyui中的tabs元件以href方式載入目標頁面,如果目標頁面中有dialog或者window這類的easyui元件中放了form.那麼在關閉這個tab再次開啟或者點選重新整理.如果進行form提交操作,後臺就會收到兩次提交請求,再次重複以上操作會收到3

使用js控制表重複提交(1加鎖,2事件方式,3 EasyUI解決重複提交

方法一、var flag = true; $(function() { $("#interested").click(function() { beInterested(); }); }); function beInterested() { //$("#inte

laravel中防止表重複提交的綜合解決方案

怎樣防止表單重複提交,通過搜尋引擎能搜到很多結果,但很零散,系統性不強,正好前幾天做了這個功能,決定記錄下來。 根據資料流向的過程,分別在三個“點”控制表單的重複提交,如下: 第一,使用者觸發submit時,前端js控制提交按鈕的狀態,使用者觸發提交即設

解決重複提交問題(使用例模式)、(md5+base64)

form表單重複提交 1.新建TokenProccessor工具類 package cn.kgc.utils; import java.security.MessageDigest; import java.security.NoSuchAlgorithmEx

(表重複提交jquery驗證 通過時,提交按鈕變灰,不通過時正常顯示

原理 ,所有表單驗證通過後,form.submit();進行表單提交。 例項1 因此在在驗證回來通過之後,表單提交前 設定提交按鈕為灰 document.getElementById("signupbutton").disabled=true;             f

jQuery easyui 取消表的實時驗證,在提交時統一驗證

在使用easyui驗證表單的必輸、格式等資訊時,如果在每個input中輸入 data-options="required:true",那麼文字框一開始就會用紅顏色提示,感覺不友好,其實驗證可以放到表單

easyUI的form表重複提交處理

1、問題              今天boss告訴我,他昨天測試的時候,發現碰了一下表單的儲存按鈕,老是儲存多條資料到資料庫。聽到這個訊息,我當時無語了,對自己無語了,忘了控制資料的重複提交問題了。我們在做開發的時候,測試一般都在本地進行,一般不會出現網速慢導致延遲等問題

解決重複提交的簡單方法

在平時開發中,如果網速比較慢的情況下,使用者提交表單後,發現伺服器半天都沒有響應,那麼使用者可能會以為是自己沒有提交表單,就會再點選提交按鈕重複提交表單,我們在開發中必須防止表單重複提交。 一、表單重複提交的常見應用場景 有如下的form.jsp頁面 <%@ pa

Thymleaf-解決IE瀏覽器表重複提交

 火狐瀏覽器、谷歌瀏覽器不會出現這個問題,但是IE瀏覽器會出現這個問題,在方法中加入return  false即可。 <script> //儲存 function save() {

解決重複提交和分散式伺服器驗證碼存放問題

一、解決表單重複提交問題 表單重複提交很常見,造成的原因是:表單重複提交的原因是短時間內使用者多次請求到後臺,後臺還沒處理完上一個請求響應到前端頁面接著下一個請求來了,會造成資料庫的                                             

解決form表重複提交以及多頁面提交問題

開發過程,遇到post重複提交問題,導致資料寫入混亂。然後採用了一種方式: (框架:TP) 在請求之前,加上表單隱藏域:__hash__不過體驗度很差 在後端, //防止表單重複提交 if(!check_token($_POST)){ $th

詳談表重複提交的三種情況及解決方法

第一種情況:提交完表單以後,不做其他操作,直接重新整理頁面,表單會提交多次。- 在servlet中寫一句輸出,用來判斷是否提交多次?12System.out.println("已經插入");request.getRequestDispatcher("/login_succes

php 解決和避免form表重複提交的方法

在提交表單的時候,可能遇到網速等導致頁面突然載入變慢,使用者重複地點選提交按鈕,將在資料庫產生多條資料,導致不可控情況。 比如下面的情況就會導致表單重複提交: 點選提交按鈕兩次。 點選重新整理按鈕。 使用瀏覽器後退按鈕重複之前的操作,導致重複提交表單。 使用瀏覽器歷史記錄重

thinkphp 解決頁面重新整理表重複提交的問題

控制器中 session_start(); $code =mt_rand(0,1000000); $_SESSION['code'] = $code; $this->assign('code'

SpringMVC後臺token防重複提交解決方案

本文介紹如何使用token來防止前端重複提交的問題。 目錄 1.思路 2.攔截器原始碼實現 3.註解原始碼 4.攔截器的配置 5.使用指南 6.結語 思路 1.新增攔截器,攔截需要防重複提交的請求 2.通過註解@Token來新增token/移除token 3

利用session防止表重複提交

使用者在提交表單的過程中,由於網路等原因,可能重複點選提交按鈕,向資料庫重複寫入或者讀取資料,為了防止這種情況發生。   解決方式: 1.客戶端防表單重複提交,在前端使用javascript限制。但是在前端並不能完全限制,比如下網頁原始碼更改,重複重新整理等。 2.服務端防

問題記錄-----表重複提交==>利用session驗證

問題記錄-----表單重複提交==>利用session驗證 大概方法就是利用session生成一個token做提交驗證,話不多說上程式碼 html程式碼 <form id="frmsave" action="" enctype="multipart/form-dat

Java 使用Token令牌防止表重複提交

Token驗證詳解 參考來源:https://blog.csdn.net/woshihaiyong168/article/details/52857479 使用Token令牌防止表單重複提交 參考來源:https://blog.csdn.net/cuiyaoqiang/article/d