1. 程式人生 > >form表單提交不重新整理

form表單提交不重新整理

大家已經發現了, 當我們點選submit提交form表單的時候, 他會重新整理一次, 如果不想它重新整理的話有下面兩種方法:

利用iframe

我們可以利用一個隱藏的iframe來實現, 主要是我們把提交目標放到一個隱藏的iframe裡, 然後讓iframe提交資料(ps: 這個未實測, 僅僅是網上提供的, 我記錄一下. 以後遇到或者會試一下吧)
<form action="" method="post" target="the_iframe">  
    <input; type="text" id="id_input_text" name="the_input_text" />  
    <input type="submit" id="id_submit" name="the_submit" value="提交" />  
</form>  
<iframe id="is_iframe" name="the_iframe" style="display:none;"></iframe>

利用onsubmit事件

我們還可以繫結onsubmit事件(用jq的話是submit()), 在submit按鈕效果觸發之前我們就把資料提交了, 然後我們return false(讓submit這次的點選觸發事件失效, 否則表單又會提交一次, 並且重新整理頁面)我們可以這樣:====== 如果你用原生js的話html程式碼:
<form id="err_form" onsubmit="return post_data()">
	<input type="text" name="contact" name="address" autofocus="autofocus" placeholder="您的聯絡方式?" />
	<input type="text" name="title" maxlength="10" placeholder="10字以內的提要 (可不填)" />
	<textarea name="errmessage" required="required" maxlength="150" rows="7" placeholder="請輸入問題描述(必填,150字以內)"></textarea>
	<input type="submit" id="sub" value="提交" />
</form>


js程式碼:
function post_data(){
	// ajax資料提交程式碼
	// .....

	return false;	//重要!一定要寫
}
/* 18-1-17更新 */這裡有一個小技巧, 剛剛發現的.我們在繫結onsubmit的時候是把return false放進onsubmit後面的呼叫函式內的, 這樣子如果你的函數出現了錯誤, 將不會繼續執行到函式最後'return false'這裡, 還是會出現重新整理的現象; 我們應該把return false寫到繫結事件中. 為了安全起見, 我們可以不用去掉函式的return false.
<form id="err_form" onsubmit="post_data();return false;">
/* ======================= */

====== 如果你用jqhtml 程式碼:
<form id="err_form">
	<input type="text" name="contact" name="address" autofocus="autofocus" placeholder="您的聯絡方式?" />
	<input type="text" name="title" maxlength="10" placeholder="10字以內的提要 (可不填)" />
	<textarea name="errmessage" required="required" maxlength="150" rows="7" placeholder="請輸入問題描述(必填,150字以內)"></textarea>
	<input type="submit" id="sub" value="提交" />
</form>
js程式碼:
$(document).ready(function() {
	$('#err_form').submit(function() {	//這次我們這麼繫結
		var contact = $("input[name='contact']").val();
		var title = $("input[name='title']").val();
		var errmessage = $("textarea[name='errmessage']").val();				
		var err_data = {
			contact: contact,
			title: title,
			errmessage: errmessage
		}
		$.ajax({
			// ajax提交程式碼....
		});
			return false;	//還是要return false, 跟上面一樣的道理
	});
});
以上!

相關推薦

form提交重新整理

大家已經發現了, 當我們點選submit提交form表單的時候, 他會重新整理一次, 如果不想它重新整理的話有下面兩種方法:利用iframe我們可以利用一個隱藏的iframe來實現, 主要是我們把提交目

layui form提交重新整理頁面

採用layui作為前端框架 js程式碼為 form.on('submit(setmypass)', function(data) { $.ajax({ ...... success:function(){ c

form提交跳轉

form表單中的 target的作用是讓form提交後在什麼視窗下開啟,有時候只需要往後臺傳值,並不需要開啟新視窗,可採用寫個看不見的iframe 這樣我們寫一個iframe,像下面這樣設定這個ifr

form提交重新整理跳轉的實現方法

由於製作使用者的註冊介面,發現每當form表單提交後,都會重新整理一下,導致填寫的資料丟失,為了解決這一問題專門,百度了一下。還真找到了一種form表單提交後,不重新整理的方法,先轉過來,以後備用。 程式碼如下: <html> <body>

form提交批量上傳檔案,重新整理跳轉頁面

jsp: <form action="inImg.do" method="post" enctype="multipart/form-data" target="nm_iframe"> <table> <tr>

html form提交重新整理跳轉的實現方法------

如何實現表單提交後不重新重新整理當前頁面<form name='form1' id='form1' action='/xbcw/cw/xx_xx.action' method='post'>   <input type="button" id="btnSubmit" name="btnSub

阻止form提交的時候頁面重新整理

把<button></button>標籤改為<input type="button">或者在<button>中新增屬性 type="button" 問題雖小,但還是有必要記錄一下 改之前,每次點選都會重新整理頁面,錯誤資訊也不提示 <

layui form提交後,自動重新整理

剛剛使用layui 來做東西,對這一切都不熟悉,使用一下form表單,但是,不能成功的使用。 問題: 提交表單,頁面自動重新整理。 出現這樣的情況呢,搜尋了一下是因為表單的提交按鈕沒有type型別。哪怕是button標籤呢,也不行。我試了一下,使用這種情況的話,主要是

action提交form跳轉

正常的form表單提交後頁面都會跳轉,為了防止頁面跳轉,可使用jQuery的ajaxSubmit來防止跳轉,可使頁面保持原樣不變1.首先引入以下檔案<script type="text/javascript" src="/js/jquery/jquery.form.js

form提交,後臺方法請求提示400,進斷點

form表單提交,後臺方法請求提示400 發現前臺的date型別form資料不能傳值到controller中的引數中,需要在請求獲取資料之前轉換型別 @initBinder可以直接在你的controller中提供資料繫結。initbinder 方法不能有返回

springMVC提交form頁面跳轉

在初學springMVC時,做一個簡單的登入功能,登入成功後跳轉到成功頁面。 最初我使用ajax方式提交表單,瀏覽器除錯檢視response結果,顯示已經成功,但是瀏覽器不跳轉 後來使用form表單

實現Form提交頁面進行跳轉

       在實際開發過程中, 我們會用到html  form表單, 簡單類似登入,修改資訊等 , 表單提交後頁面會進行跳轉.  但是在某種情況下,  我們不需要頁面進行跳轉, 並且將資料使用aja

如果一個button被用於觸發ajax,那就能再用它進行form提交

 form表單提交,和ajax提交不能同時存在,如果這個button被用於觸發ajax,那就不能再用它進行form表單提交了 如果一個頁面裡面,既有ajax傳參,又有表單傳參,那麼,必須設定兩個按

解決select 下拉框 設定disabled屬性後 form提交到後臺取到值的情況

1. 鑑於select 下拉框沒有readonly屬性,有以下兩種方式:    1. <select  style='width: 235px;color:#aaa'       onfocus="this.defaultIndex=this.selectedIndex

下拉框設定disabled屬性,form提交後臺拿到相應的值

給某個下拉框設定不可選,但是form表單提交以後拿不到該下拉框對應的值$("#type").attr("disabled","disabled");解決方法:form表單提交之前,jquery將該屬性去掉即可 $("#type").removeAttr("disabled")

jquery實現form提交後區域性重新整理頁面的多種方法

最近做一個小專案,剛好需要用到搜尋功能,實現搜尋框內輸入資料然後按回車或者點選“提交”,然後給後臺資料庫處理並返回資料給前端,在前端區域性更新資料。 比如這樣的:但是遇到了一個小問題,就是form表單下任意輸入框輸入完按回車提交,整個頁面都會重新整理,就算我用ajax從後臺取

前端form提交,Springmvc 訪問到Controller類,報404

原文地址:https://blog.csdn.net/saszyl/article/details/78925315困擾了很久的問題終於已經解決。在springmvc的配置檔案中加入:<mvc:annotation-driven/>即可解決。

form提交方式 以及 HTTP 405 錯誤 – 方法被允許 (Method not allowed)

form表單提交方式:參考http://www.anyrt.com/blog/list/submit.htmlHTTP 405 錯誤:參考https://www.cnblogs.com/pinocchioatbeijing/articles/2375139.html

form 提交後,使頁面跳轉

form 表單提交資料,往往會重新整理頁面,資料提交後會跳轉到其他頁面 如果不需要重新整理頁面時,可以通過ifame實現無重新整理。 在form表單下定義一個ifame 將 form 的 target 屬性指向 iframe 的 name 屬性,這樣就實現了不

AJAX PHP無刷新form提交的簡單實現(推薦)

username mime win root 支持 對象 希望 meta {} 下面小編就為大家帶來一篇AJAX PHP無刷新form表單提交的簡單實現(推薦)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 ajax.php <