JQuery里ajax的表单传值serialize()用法

      本文导读:在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 属性。

4、form里面的name不能够用 Js、jquery里的关键字。

首先有一个form表单: JQuery里ajax的表单传值serialize()用法

<form id="form1">

   <input name="name" type="text" value="小明" />

   <input name="sex" type="text" value="男" />
  <input type="button" id="submit" value="提交" />
</form>

通过ajax将表单内容传到后台一般是

    $.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();
}
}
});

这种拼接的data非常的麻烦,那么serialize()就很好的解决这个问题了,

    $.ajax({
type: "POST",
data:$("#form1").serialize(), //用form的id去找对象 ,也可以使用$('form').serialize(),
url: "你的方法名",
dataType: "text",
// cache: false,
success: function(data){
if(data==1){
alert("删除失败!");
}else{
//其他
}
}
});

这样就把form表单序列化过去了,

传过去会是 name=小明&sex=男 ;

接下来就可以在后台 继续处理了。


注:本文由王智磊(王大宝儿)整理编写,也参考借鉴了很多大神的笔记,分享代码,分享成功,欢迎各位交流和转载,转载请注明出处(博客园:王大宝儿)http://www.cnblogs.com/wangzhilei/

上一篇:javaWeb基础一:JDBC (java操作数据库的技术)


下一篇:jquery中ajax的用法