在jQuery中,当我们使用ajax时,常常需要拼装 input数据以键值对(Key/Value)的形式发送到服务器,用JQuery的serialize方法可以轻松的完成这个工作,使用这个方法可以将 表单序列化为键值对(key1=value1&key2=value2…)后提交。下面介绍JQuery中serialize()的用法:
语法:
$('form').serialize()
详细说明
1、.serialize() 方法创建以标准 URL 编码表示的文本字符串。它的操作对象是代表表单元素集合的 jQuery 对象。
2、.serialize() 方法可以操作已选取个别表单元素的 jQuery 对象,比如 <input>, <textarea> 以及 <select>。不过,选择 <form> 标签本身进行序列化一般更容易些
3、只会将”成功的控件“序列化为字符串。如果不使用按钮来提交表单,则不对提交按钮的值序列化。如果要表单元素的值包含到序列字符串中,元素必须使用 name 属性。========像这样<input type="text" name="username">
4、form里面的name不能够用 Js、jquery里的关键字。
首先有一个form表单:
<form id=
"form1"
>
<input name=
"name"
type=
"text"
value=
"小明"
/>
<input name=
"sex"
type=
"text"
value=
"男"
/>
<input type=
"button"
id=
"submit"
value=
"提交"
/>
</form>
$.ajax({
type:
"POST"
,
data:
"name="
+$(
"input[name='name']"
).val()+
"&sex="
+$(
"input[name='name']"
).val(),
url:
"你的方法名"
,
dataType:
"text"
,
cache: false,
success:
function
(data){
if
(1==data){
alert(
"删除失败!"
);
return
;
}
else
{
location.reload();
}
}
});
$.ajax({
type:
"POST"
,
data:$(
"#form1"
).serialize(),
//用form的id去找对象 ,也可以使用$('form').serialize(),
url:
"你的方法名"
,
dataType:
"text"
,
// cache: false,
success:
function
(data){
if
(data==1){
alert(
"删除失败!"
);
}
else
{
//其他
}
}
});