jQuery ajaxSubmit可以實現AJAX提交表單 局部重新整理頁面DIV (可以實現重新整理JSP TABLE 哦!)
需要引入 : jquery-form.js
使用說明:
Java代碼
- $(document).ready(function() {
- var options = {
- target: '#mydiv', // 需要重新整理的地區
- //beforeSubmit: showRequest, // 提交前調用的方法
- //success: showResponse // 返回後笤俑的方法
-
- // other available options:
- //url: url // 提交的URL, 預設使用FORM ACTION
- //type: type // 'get' or 'post', override for form's 'method' attribute
- //dataType: null // 'xml', 'script', or 'json' (expected server response type)
- //clearForm: true // 是否清空form
- //resetForm: true // 是否重設form
-
- // $.ajax options can be used here too, for example:
- //timeout: 3000
- };
-
- // 綁定FORM提交事件
- $('#myForm').submit(function() {
- $(this).ajaxSubmit(options);
-
- // !!! Important !!!
- // always return false to prevent standard browser submit and page navigation
- return false;
- });
- });
調用前後方法:
Java代碼
- // pre-submit callback
- function showRequest(formData, jqForm, options) {
- // formData is an array; here we use $.param to convert it to a string to display it
- // but the form plugin does this for you automatically when it submits the data
- var queryString = $.param(formData);
-
- // jqForm is a jQuery object encapsulating the form element. To access the
- // DOM element for the form do this:
- // var formElement = jqForm[0];
-
- alert('About to submit: \n\n' + queryString);
-
- // here we could return false to prevent the form from being submitted;
- // returning anything other than false will allow the form submit to continue
- return true;
- }
-
- // post-submit callback
- function showResponse(responseText, statusText) {
- // for normal html responses, the first argument to the success callback
- // is the XMLHttpRequest object's responseText property
-
- // if the ajaxSubmit method was passed an Options Object with the dataType
- // property set to 'xml' then the first argument to the success callback
- // is the XMLHttpRequest object's responseXML property
-
- // if the ajaxSubmit method was passed an Options Object with the dataType
- // property set to 'json' then the first argument to the success callback
- // is the json data object returned by the server
-
- alert('status: ' + statusText + '\n\nresponseText: \n' + responseText +
- '\n\nThe output div should have already been updated with the responseText.');
- }
項目中可以寫一個公用的方法:
Java代碼
- // 局部提交表單
- function formSubmit(formId, divId, url) {
- $('#' + formId).submit(function() {
- $(this).ajaxSubmit( {
- target : '#' + divId,
- url : url,
- error : function() {
- alert('載入頁面' + url + '時出錯!')
- }
- });
- return false;
- });
- }
=====================================================================
案例 重新整理TABLE:
1.把TABLE單獨放一個JSP,首頁面 include TABLE頁面。
2.首頁面:
Java代碼
- window.onload=function (){
- //AJAX 提交FORM重新整理TABLE
- $('#queryForm').submit(function() {
- $(this).ajaxSubmit( {
- target : '#table1'
- });
- return false;
- });
- }
點擊查詢按鈕 提交FORM。
3.JAVA:FORM提交調用的方法和 普通的ACTION寫法一樣, STRUTS裡配置該ACTION跳轉到 那個單獨的TABLE JSP頁面,返回成功後,就會看到重新整理了TABLE。
Java代碼
- /**
- * AJAX匯總查詢 未公開知情人列表
- * 部門合規風控專員 匯總查詢
- */
- public String ajaxgatherinsiderlist() {
- //相關業務資料查詢
- return SUCCESS;
- }