jquery實(shí)現(xiàn)ajax提交表單信息的簡單方法(推薦)
最近在思考優(yōu)化項(xiàng)目,想自己擴(kuò)展一個(gè)jquery自動(dòng)獲取表單中的數(shù)據(jù)進(jìn)行ajax提交。本人沒有完整性學(xué)習(xí)jquery,基本上是現(xiàn)學(xué)現(xiàn)找,有點(diǎn)困難。
主要是擴(kuò)展和拼接json轉(zhuǎn)對(duì)象
很簡單,附上代碼:
; (function ($) {
$.fn.ajaxForm = function (options) {
var defaults = {
modelname: 'model',//后臺(tái)對(duì)象接收名稱
url: '/',//提交地址
postType: 'POST',//提交方式
dataType: 'JSON',//數(shù)據(jù)返回類型
async: false,//是否異步
optionObj: [],//自定義參數(shù)
callback: function () { },//成功回調(diào)
};
var options = $.extend(defaults, options);//合并參數(shù)
if (options.url == '') {
alert('請(qǐng)?zhí)顚懱峤坏刂?);
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: "請(qǐng)?zhí)顚懴到y(tǒng)名稱"
},
Description: {
required: "請(qǐng)?zhí)顚懴到y(tǒng)描述"
}
},
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實(shí)現(xiàn)ajax提交表單信息的簡單方法(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- jquery ajax異步提交表單數(shù)據(jù)的方法
- jQuery通過ajax快速批量提交表單數(shù)據(jù)
- jquery的ajax提交form表單的兩種方法小結(jié)(推薦)
- jQuery ajax提交Form表單實(shí)例(附demo源碼)
- jQuery實(shí)現(xiàn)form表單基于ajax無刷新提交方法詳解
- jquery validate和jquery form 插件組合實(shí)現(xiàn)驗(yàn)證表單后AJAX提交
- jquery ajax 如何向jsp提交表單數(shù)據(jù)
- jquery+ajax驗(yàn)證不通過也提交表單問題處理
- 詳解jquery中$.ajax方法提交表單
- jQuery實(shí)現(xiàn)表單動(dòng)態(tài)加減、ajax表單提交功能
相關(guān)文章
關(guān)于juqery radio寫法的兼容性問題(新老版本jquery)
最近經(jīng)客戶反映,頁面某些效果無反應(yīng),經(jīng)查找,發(fā)現(xiàn)juqery的寫法有問題(jquery獲取radio值),主要是因?yàn)樾掳姹拘薷牧瞬糠謱?shí)現(xiàn)方式。2010-06-06
jQuery實(shí)現(xiàn)dialog設(shè)置focus焦點(diǎn)的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)dialog設(shè)置focus焦點(diǎn)的方法,涉及jQuery針對(duì)dialog的操作技巧,需要的朋友可以參考下2015-06-06
如何實(shí)現(xiàn)星星評(píng)價(jià)(jquery.raty.js插件)
本文主要分享了用jQuery插件jquery.raty.js實(shí)現(xiàn)星星評(píng)價(jià)功能:后臺(tái)傳數(shù)據(jù),前臺(tái)顯示星星個(gè)數(shù)的具體方法。有很好的參考價(jià)值,需要的朋友一起來看下吧2016-12-12
jQuery 獲取select選中值及清除選中狀態(tài)
這篇文章主要介紹了jQuery 獲取select選中值及清除選中狀態(tài)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-12-12
利用jQuery設(shè)計(jì)一個(gè)簡單的web音樂播放器的實(shí)例分享
這篇文章主要介紹了利用jQuery設(shè)計(jì)一個(gè)簡單的web音樂播放器的實(shí)例分享,包括PHP后臺(tái)和從MySQL中讀取曲目等基本功能的實(shí)現(xiàn),需要的朋友可以參考下2016-03-03
jQuery+css實(shí)現(xiàn)圖片滾動(dòng)效果(附源碼)
圖片滾動(dòng)效果想必大家都已司空見慣了吧,接下來本文介紹下jQuery+CSS實(shí)現(xiàn)圖片滾動(dòng),感興趣的你可不要錯(cuò)過了哈,希望可以幫助到你2013-03-03

