前文章描述了Form表單提交方式與提交是幾個小細節行問題,那接下來就描述下表單提交完成后,后臺給用戶操作的反饋以及后續操作應該跳轉到具體頁面的流程。
第一種方式:在控制器中(serlvet) 使用如下2行代碼
session.setattribute("message","前臺要輸出的內容");
response.sendRedirect(request.getHeader("referer"));
其中,給用戶的反饋信息放在session 中,第二句的意思是跳轉到請求頁面。
第二種方式:使用Ajax() 中的success 函數中寫入,如下圖一所示。
圖一
使用alert(msg);//輸出控制層的操作結果
使用goPage() 方法,跳轉到指定的頁面。上圖是跳轉到本頁面,若是讓頁面刷新的呢,就得結合window.location=function(){window.opener.location.reload();}方法。
如果要跳轉到其上一頁面,同時也要刷新上一頁呢?
首先,得關閉當前頁面;然后就自動跳轉到 上一面了,同時上一頁面也必須寫 定義function XXX(){window.opener.location.reload();}函數,然后在<body onunload="XXX();">,就是調用onunload方法,去調用頁面再次加載,就是相當于刷新了,部分代碼,如圖二所示:,
圖二
同時也可以使用 window.history.back(-1)等方法,但是被跳轉頁面也得定義類似圖二中 的 load(),方可刷新頁面。
Query Form插件是一個優秀的Ajax表單插件,可以非常容易地、無侵入地升級HTML表單以支持Ajax。jquery Form有兩個核心方法 -- ajaxForm() 和 ajaxSubmit(), 它們集合了從控制表單元素到決定如何管理提交進程的功能。另外,插件還包括其他的一些方法: formToArray()、formSerialize()、fieldSerialize()、fieldValue()、clearForm()、clearFields() 和 resetForm()等。
本文使用jquery.form.js解決提交之后,頁面發生跳轉,在一個空白頁面上顯示了后端返回的json數據問題,需要的朋友參考下:
面臨問題:form表單submit之后,后端會返回提示信息。但原生html無法獲取后端返回的數據,就造成了這樣一種局面:提交之后,頁面發生跳轉,在一個空白頁面上顯示了后端返回的json數據,用戶體驗0分。
解決方法:使用jquery.form.js
首先引入jquery.form.js
自定義控制提交函數:
改造form表單(添加onsubmit事件,返回自定義處理函數)
圖1
圖2
圖3
*請認真填寫需求信息,我們會在24小時內與您取得聯系。