在開發項目中,將前台的值傳給後台,有時的JSP表單中的值有一兩個,也有全部的值,如果這時一個個傳,必定不是很好的辦法,所以使用jQuery提供的表單序列化方法,可以很好的解決這個問題,同時可以封裝成通用的函數,執行成功可以調用各自的回調函數,實現各自的功能。
代碼如下:
function queryUserInfo(actionUrl,formId,fun){
var params=new Object(); //聲明數組
$.each($("#"+formId).serializeArray(),function(index,param){
params[param.name] = param.value; //序列化表單
});
params['time']=new Date(); //1
$.ajax( {
url : basePath+actionUrl,
data : params,//沒有1,可以這樣寫("#"+formId).serializeArray()
type : 'POST',
dataType:'json',
async: false,//表示同步,等待服務端返回數據,才會執行後面的代碼
success : function(obj) {
fun(actionUrl,formId,obj);
},
error: function() {
alert("訪問異常");
}
});
}
另一種方式:
function setUserInfo(actionUrl,userid,username,fun){
var params=new Object(); //聲明數組
params['user.id']=userid;
params['user.name']=username;
$.ajax( {
url : actionUrl,
data : params,//沒有1,可以這樣寫("#"+formId).serializeArray()
type : 'POST',
dataType:'json',
async: false,//表示同步,等待服務端返回數據,才會執行後面的代碼
success : function(obj) {
fun(actionUrl,formId,obj);//調用回調的函數
},
error: function() {
alert("訪問異常");
}
});
}