当页面中出现大量的参数的时候,通过$一个一个的获取对象然后取值,很费时间。
可以获取同一类的所有值,然后用字符串拼接的方式,形成一个标准的json字符串,然后作为一个字符串参数传给后台,后台用json解析器解析
/*
* 此方法为通用的获取参数的方法
* 返回值:json字符串
* 参数:无
*
* 具体规则如下:
* 1.若输入类型为radio,那么value按照0 1 2 3 4 的顺序依次递进
*
* */
function getParameters(){
var params = "{";
//获取所有的area区域的值
$("textarea").each(function(i){
params = params+ "\""+this.id+"\":"+"\""+this.value+"\","
});
//获取radio的值
$("input[type=‘radio‘]").each(function (i) {
if(this.checked)
params = params+ "\""+this.name+"\":"+"\""+this.value+"\","
else
params = params+ "\""+this.name+"\":"+"\""+"0"+"\","
})
//获取text的值
$("input[type=‘text‘]").each(function (i) {
params = params+ "\""+this.id+"\":"+"\""+this.value+"\","
})
//获取select的值
$("select").each(function (i) {
params = params+ "\""+this.id+"\":"+"\""+this.value+"\","
})
//获取number的值
$(" input[type=‘number‘]").each(function (i) {
params = params+ "\""+this.id+"\":"+"\""+this.value+"\","
})
//获取checkbox是否选中的值
$("input[type=‘checkbox‘]").each(function (i) {
if(this.checked)
params = params+ "\""+this.id+"\":"+"\""+"1"+"\","
else
params = params+ "\""+this.id+"\":"+"\""+"0"+"\","
})
params = params.substring(0,params.length-1)
params=params+"}"
return params
}
当前页面大量参数的时候,jquery获取当前页面的参数,打包成json字符串
原文:http://www.cnblogs.com/buaishuohua/p/6434608.html