.serialize() / .serializeArray() / $.param()——将form表单的数据转为字符串 / 转为JSON格式 / &序列化
一、.serialize()——将form表单的数据转为字符串
描述:将DOM元素内容序列化,返回字符串,用于ajax请求
写法:元素.serialize()
简化ajax数据:
$.get("get1.php", {
username: $("#username").val(),
content: $("#content").val(),
}, function (data, textStatus) {
$("#resText").html(data);
});
//简化后
$.get("get1.php", $("#form1").serialize(), function (data, textStatus) {
$("#resText").html(data); // 把返回的数据添加到页面上
});
<form id="form1" action="#"> <p>评论:</p> <p>姓名: <input type="text" name="username" id="username" /></p> <p>内容: <textarea name="content" id="content" rows="2" cols="20"></textarea></p> <p><input type="button" id="send" value="提交"/></p> </form>
二、 .serializeArray()——将form表单的数据返回json格式的数据
描述:将DOM元素序列化后,返回json格式的数据
写法:元素.serializeArray()
console.log( $('form').serializeArray() );
结果是
[
{ name : 'a' , value : '1' },
{ name : 'b' , value : '2' },
{ name : 'c' , value : '3' }
]
<form> <input type="text" name="a" value="1"> <input type="text" name="b" value="2"> <input type="text" name="c" value="3"> </form>
三、$.param()——把数组 / 对象按照key / value进行序列化
写法:$.param(对象)
var obj = { a: 1, b: 2, c: 3 }; var k = $.param(obj); alert(k) // 输出 a=1&b=2&c=3

浙公网安备 33010602011771号