*)表单serialize()序列化,和serializeArray()

##)应用场景

  当Ajax或者get请求发送表单中的某一个,或者某几个值到后台时,通过jQuery就能获取到这些值。然后作为Ajax的参数(或者get请求的 ? 后的参数)发送到后台。

  但是,当需要发送整个表单的数据到后台时,表单如果小还好说,表单如果大,有很多的值,那一个一个获取就比较麻烦了。

  这个时候,就需要使用$("form").serialize();

  在w3school中可以看到相关资料:http://www.w3school.com.cn/jquery/ajax_serialize.asp

##)用法:

  可以选择一个表单、或者一类表单元素,或者整个form,进行.serialize() 或serializeArray()操作。

  .serialize()  .serializeArray()操作只将有name属性的表单元素生成

  ###).serialize() 返回URL编码文本字符串

  生成的结果如下:a=1&b=2&c=3&d=4&e=5        即:name值1=对应value值1&name值2=对应value值2  

  这个结果可以直接追加到get请求路径的后面。

  ###).serializeArray()返回JSON对象(是JSON对象,而不是JSON字符串,需要使用插件或者第三方库进行字符串化操作。)

  生成的结果如下:

[
{name: 'firstname', value: 'Hello'}, //name:是表单name value是:表单的值
{name: 'lastname', value: 'World'},
{name: 'alias'}, // 值为空
]

  这个结果可以作为Ajax的参数传递到后台。

*)JSON.stringify()

JSON.stringify() 是JavaScript提供的处理JSON对象的内置函数。参考w3school文档:http://www.w3school.com.cn/js/js_json_stringify.asp

作用:把JavaScript对象转换成JSON的字符串形式

var obj = { name:"Bill Gates", age:62, city:"Seattle"};  //js对象
var arr = [ "Bill Gates", "Steve Jobs", "Elon Musk" ];  //js数组
var obj =  { "name":"Bill Gates", "today":new Date(), "city":"Seattle"};  //js对象含日期,日期也会转换成对应的字符串形式
这样的几种类型的对象转换成JSON形式的字符串
 
*)toJSON()
toJSON() 是JavaScript Date对象的函数,用来把日期转换成JSON形式的字符串,形式为:就像x ISO-8601 标准: YYYY-MM-DDTHH:mm:ss.sssZ
 
 
 

jQuery积累:serialize()、stringify()、toJSON()的更多相关文章

  1. 拓展jQuery的serialize(),将form表单转化为json对象

    jQuery 的 serialize() 方法经常会报 Uncaught TypeError: JSON.serializeObject is not a function 的错误, 原装的方法真的一 ...

  2. JQuery中serialize()、serializeArray()和param()方法示例介绍

    在项目中做form表单提交的时候,如果参数比较少,可以通过jquery一个个取得,但是当 form表参数很多的情况下,还是一一取得的话无疑是加大了工作量,那我们需要咱们获取到表单的所有参数呢,幸好,j ...

  3. 2016 系统设计第一期 (档案一)jQuery ajax serialize()方法form提交数据

    jQuery ajax serialize()方法form提交数据,有个很奇怪的问题,好像不能取到隐藏控件的值. //点击提交按钮保存数据 $('#btn_submitUser').click(fun ...

  4. JQuery中serialize() 序列化

    更多2014/8/24 来源:jquery学习浏览量:1671 学习标签: serialize 本文导读:在jQuery中,当我们使用ajax时,常常需要拼装input数据以键值对(Key/Value ...

  5. 关于jquery的serialize方法转换空格为+号的解决方法

    jquery的 serialize()方法,可以对表单项进行序列化,这本来是很方便的一个功能:但是实际使用中去发现了如下问题:例如:< textarea name="content&q ...

  6. JQuery中serialize()

    一.serialize()定义和用法: serialize()方法通过序列化表单值,创建标准的URL编码文本字符串,它的操作对象是代表表单元素集合的jQuery 对象.你可以选择一个或多个表单元素(比 ...

  7. jQuery ajax - serialize() 方法-输出序列化表单值

    定义和用法 serialize() 方法通过序列化表单值,创建 URL 编码文本字符串. 您可以选择一个或多个表单元素(比如 input 及/或 文本框),或者 form 元素本身. 序列化的值可在生 ...

  8. jQuery.fn.serialize 阅读

    今天第一次阅读jQuery源码,因为读到用js对表单的序列化,为的是在ajax操作中将表单中各个域的值传到服务器.书上用了很长的步骤,判断每一个表单域的属性,然后拼接. 大概是这样: function ...

  9. jquery $('#form1').serialize()序列化提交表单

    1.$("#form1").serialize() 把form表单的值序列化成一个字符串,如username=admin&password=admin123 <for ...

随机推荐

  1. Eclipse如何汉化[完美版]

    当前版本:Eclipse 4.5.1 1.如何查看eclipse的版本呢 找到关于Eclipse,点击 . 2.打开浏览器连接http://www.eclipse.org/babel/download ...

  2. vue手写轮播

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 2019Android阿里&腾讯&百度&字节面试汇总(附面试题总结、Android书单)

    1.基本情况 先简单说说我今年的面试经历吧,本人2018届211软件工程硕士生,Android开发岗.此文主要是2019年年初春招的面试和秋招面试经验汇总,最终拿到了阿里,腾讯,字节跳动,百度等off ...

  4. Day6----Python的pyinstall库的使用

    Python的pyinstaller库 pyinstaller的安装 介绍:pyinstaller是Python的第三方库,主要用于将Python代码打包成  可执行文件    ,以此达到就算没安装P ...

  5. 1-for循环套生成器的面试题

    参考自: https://www.cnblogs.com/shuimohei/p/9686578.html https://segmentfault.com/a/1190000016577353 题目 ...

  6. 那些年很脑残的bugs

    1.老师给了前端界面,我们用java写后台. 我改了表单form的action属性,让它跳到自己写的servlet上面去.自己在servlet里面对数据库一顿操作猛如虎,然后让servlet跳回原来页 ...

  7. mint/ubuntu Android Eclipse ADT 简单安装及执行崩溃解决的方法

    1. 下载 Android SDK(ADT Bundle)     http://developer.android.com/sdk/index.html     (站点訪问不了或者慢.请參考:轻松改 ...

  8. 一个简单的winform程序调用webservices

    本文原创,如需转载,请标明源地址,谢谢合作!http://blog.csdn.net/sue_1989/article/details/6597078 本文的编写IDE为VSTS2008和.NET F ...

  9. 如何用latex画一个简单的表格

    latex毫无疑问是一个十分强大的论文写作工具,所以掌握它就显得非常有意义,讲一下如何画一个简单的表格,代码如下: \begin{table}\centering\begin{tabular}{||c ...

  10. Django--Auth模块使用

    1.Auth模块介绍 1.1 Auth模块是Django自带的用户认证模块,用于处理用户账户.群组.许可和基于cookie的用户回话 Django的认证系统主要包括下面几个部分 1.用户 2.许可 3 ...