关于serialize和serializearray在JS和JQuery的区别

1、serialize()方法

描述:序列化表单内容为字符串,用于Ajax请求。

格式:var data = $("form").serialize();

2.serializeArray()方法

描述:序列化表单元素(类似'.serialize()'方法)返回JSON数据结构数据。

           注意,此方法返回的是JSON对象而非JSON字符串。需要使用插件或者<a>第三方库</a>进行字符串化操作。

格式:var jsonData = $("form").serializeArray();

在使用ajax提交表单数据时,以上两种方法都可以将data参数设置为$("form").serialize()或$("form").serializeArray()。

 

  1. $(function() {  
  2.    $("#ajaxBtn").click(function() {  
  3.     var params1 = $("#myform").serialize();  
  4.     var params2 = $("#myform").serializeArray();  
  5.     console.log(params1);  //name=zhangsan&sex=1&age=20  
  6.     console.log(params2);  //[Object, Object, Object]  
  7.     $.ajax( {  
  8.         type : "POST",  
  9.         url : "RegisterAction.action",  
  10.         data : params1,  
    //data: {参数名: 参数 
    , 参数名: 参数},
  11.         success : function(msg) {  
  12.             alert("success: " + msg);  
  13.         }  
  14.     });  
  15.    })  
  16. }) 


从下图中可以看出两种方法的不同

posted @ 2017-07-03 13:09  静醉丶那份默念  阅读(4202)  评论(0编辑  收藏  举报