jquery.serialize() 函数语法及简单实例


Posted in Javascript onJuly 08, 2016

jQuery - serialize() 方法

W3School给出的定义与用法:

serialize() 方法通过序列化表单值,创建 URL 编码文本字符串。

您可以选择一个或多个表单元素(比如 input 及/或 文本框),或者 form 元素本身。

序列化的值可在生成 AJAX 请求时用于 URL 查询字符串中。

语法

$(selector).serialize()详细说明
.serialize() 方法创建以标准 URL 编码表示的文本字符串。它的操作对象是代表表单元素集合的 jQuery 对象。

------------------------- 分割线 ----------------------

serialize()函数用于序列化一组表单元素,将表单内容编码为用于提交的字符串。

serialize()函数常用于将表单内容序列化,以便用于AJAX提交。

该函数主要根据用于提交的有效表单控件的name和value,将它们拼接为一个可直接用于表单提交的文本字符串,该字符串已经过标准的URL编码处理(字符集编码为UTF-8)。

该函数不会序列化不需要提交的表单控件,这和常规的表单提交行为是一致的。例如:不在<form>标签内的表单控件不会被提交、没有name属性的表单控件不会被提交、带有disabled属性的表单控件不会被提交、没有被选中的表单控件不会被提交。

与常规表单提交不一样的是:常规表单一般会提交带有name的按钮控件,而serialize()函数不会序列化带有name的按钮控件。
 

返回值

serialize()函数的返回值为String类型,返回将表单元素编码后的可用于表单提交的文本字符串。

示例&说明

请参考下面这段初始HTML代码:

<form name="myForm" action="http://www.365mini.com" method="post">
  <input name="uid" type="hidden" value="1" />
  <input name="username" type="text" value="张三" />
  <input name="password" type="text" value="123456" />
  <select name="grade" id="grade">
    <option value="1">一年级</option>
    <option value="2">二年级</option>
    <option value="3" selected="selected">三年级</option>
    <option value="4">四年级</option>
    <option value="5">五年级</option>
    <option value="6">六年级</option>
  </select>
  <input name="sex" type="radio" checked="checked" value="1" />男
  <input name="sex" type="radio" value="0" />女
  <input name="hobby" type="checkbox" checked="checked" value="1" />游泳
  <input name="hobby" type="checkbox" checked="checked" value="2" />跑步
  <input name="hobby" type="checkbox" value="3" />羽毛球
  <input name="btn" id="btn" type="button" value="点击" />
</form>

对<form>元素进行序列化可以直接序列化其内部的所有表单元素。

// 序列化<form>内的所有表单元素
// 序列化后的结果:uid=1&username=%E5%BC%A0%E4%B8%89&password=123456&grade=3&sex=1&hobby=1&hobby=2
alert( $("form").serialize() );

我们也可以直接对部分表单元素进行序列化。

// 序列化所有的text、select、checkbox表单元素
// 序列化后的结果:username=%E5%BC%A0%E4%B8%89&password=123456&grade=3&hobby=1&hobby=2
alert( $(":text, select, :checkbox").serialize() );

serialize()函数通常用于将表单内容序列化,以便通过AJAX方式提交。

$("#btn").click( function(){

  // 将当前表单内容以POST请求的AJAX方式提交到"http://www.365mini.com"
  $.post( "http://www.365mini.com", $("form").serialize(), function( data, textStatus, jqXHR ){
    alert( "AJAX提交成功!" );    
  } );
    
} );

以上这篇jquery.serialize() 函数语法及简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 发个判断字符串是否为符合标准的函数
Apr 27 Javascript
我遇到的参数传递中 双引号单引号嵌套问题
Feb 11 Javascript
JavaScript.Encode手动解码技巧
Jul 14 Javascript
用js来解决ajax读取页面乱码
Nov 28 Javascript
在子窗口中关闭父窗口的一句代码
Oct 21 Javascript
D3.js实现直方图的方法详解
Sep 25 Javascript
JavaScript实现图片轮播组件代码示例
Nov 22 Javascript
文件上传插件SWFUpload的使用指南
Nov 29 Javascript
bootstrap导航条实现代码
Dec 28 Javascript
微信小程序实现锚点定位楼层跳跃的实例
May 18 Javascript
详解ES6 Symbol 的用途
Oct 14 Javascript
vue使用watch监听属性变化
Apr 30 Vue.js
详解BootStrap中Affix控件的使用及保持布局的美观的方法
Jul 08 #Javascript
Augularjs-起步详解
Jul 08 #Javascript
Bootstrap Metronic完全响应式管理模板之菜单栏学习笔记
Jul 08 #Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
Jul 08 #Javascript
Angularjs---项目搭建图文教程
Jul 08 #Javascript
Node.js 文件夹目录结构创建实例代码
Jul 08 #Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
Jul 07 #Javascript
You might like
php学习笔记 面向对象中[接口]与[多态性]的应用
2011/06/16 PHP
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
Laravel中的Auth模块详解
2017/08/17 PHP
PHP基于cookie实现统计在线人数功能示例
2019/01/16 PHP
用javascript来实现动画导航效果的代码
2007/12/16 Javascript
javascript add event remove event
2008/04/07 Javascript
checkbox全选/取消全选以及checkbox遍历jQuery实现代码
2009/12/02 Javascript
javascript 放大镜 v1.0 基于Yui2 实现的放大镜效果
2010/03/08 Javascript
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
jQuery页面刷新(局部、全部)问题分析
2016/01/09 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
值得学习的bootstrap fileinput文件上传工具
2016/11/08 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
2017/03/30 Javascript
深入理解JavaScript创建对象的多种方式以及优缺点
2017/06/01 Javascript
JS验证输入的是否是数字及保留几位小数问题
2018/05/09 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
使用JavaScript解析URL的方法示例
2019/03/01 Javascript
vue插件mescroll.js实现移动端上拉加载和下拉刷新
2019/03/07 Javascript
JavaScript的查询机制LHS和RHS解析
2019/08/16 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
JQuery事件冒泡和默认行为代码实例
2020/05/13 jQuery
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
Python制作CSDN免积分下载器
2015/03/10 Python
Python解析xml中dom元素的方法
2015/03/12 Python
Python实现将xml导入至excel
2015/11/20 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
Evisu官方网站:日本牛仔品牌,时尚街头设计风格
2016/12/30 全球购物
捷克移动配件网上商店:ProMobily.cz
2019/03/15 全球购物
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
财务方面个人工作的自我评价
2013/12/28 职场文书
创意活动策划书
2014/01/15 职场文书
vue首次渲染全过程
2021/04/21 Vue.js
Golang 实现超大文件读取的两种方法
2021/04/27 Golang
OpenCV-Python直方图均衡化实现图像去雾
2021/06/07 Python
Java虚拟机内存结构及编码实战分享
2022/04/07 Java/Android