jquery實現ajax提交表單資訊的簡單方法(推薦)_jquery

來源:互聯網
上載者:User

最近在思考最佳化項目,想自己擴充一個jquery自動擷取表單中的資料進行ajax提交。本人沒有完整性學習jquery,基本上是現學現找,有點困難。

主要是擴充和拼接json轉對象

很簡單,附上代碼:

; (function ($) {    $.fn.ajaxForm = function (options) {     var defaults = {       modelname: 'model',//後台對象接收名稱       url: '/',//提交地址       postType: 'POST',//提交方式       dataType: 'JSON',//資料傳回型別       async: false,//是否非同步       optionObj: [],//自訂參數       callback: function () { },//成功回調     };     var options = $.extend(defaults, options);//合并參數      if (options.url == '') {       alert('請填寫提交地址');       return;     }     var postvals = {};      //textbox/隱藏欄位/textarea/radio選中值     $(this).find('input[type="text"],input[type="hidden"],textarea,input[type="radio"]:checked').each(function () {       if ($(this).val() != undefined) {         var name = $(this).attr('name');         if (name == undefined || name == '') {           return false;         }         var value = $(this).val();         var json = '{"' + name + '":"' + value + '"}';         var obj = $.parseJSON(json);         postvals = $.extend(postvals, obj);       }     });      var resObj;     if (options.optionObj != undefined || options.optionObj!=[]) {       resObj = $.extend(postvals,options.optionObj);     } else {       resObj = postvals;     }      $.ajax({       type: options.postType,       dataType: options.dataType,       data: resObj,       async: options.async,       url: options.url,       success: function (json) {         if (json.IsError) {           alert(json.Message);         } else {           options.callback();         }       }     });   };  })(jQuery); 

使用的話配合jquery validate使用

$("#system-form").validate({   rules: {     SystemName: {       required: true    },     Description: {       required: true,     },   },   messages: {     SystemName: {       required: "請填寫系統名稱"    },     Description: {       required: "請填寫系統描述"    }   },   submitHandler: function(form) {     var url = '/oa/system/' + $(form).attr('ftype');     $(form).ajaxForm({ url: url,modelname:'system', callback: function() {       location.href = '/oa/system/index.html';     } });   } });

以上這篇jquery實現ajax提交表單資訊的簡單方法(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援雲棲社區。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.