表单序列化的作用是:将表单内容序列化成一个字符串,方便Ajax传递表单值给服务器。


【浏览器把表单数据提交到服务器的细节】:

1. 对字段的名和值进行URL编码,并使用“&”分隔
2. 不发送禁用的字段 disabled
3. 多选框中每个选中的名值对是单独的一个条目
4. 在<select>元素中,option如果没有value特性,则值为option的文本值text
5. 不发送button、reset、submit、file字段的名值对
var form = document.getElementById("表单ID");
function serialize(form){var parts = [],   //保存字段和对应值的一个数组field = null,i,len,j,optLen,option,optValue;for(i=0,len = form.elements.length;i<len;i++){field = form.elements[i];switch(field.type){case "select-one":case "select-multiple":if(field.name.length){for(j=0,optLen=field.options.length;j<optLen;j++){option = field.options[j];if(option.hasAttribute){optValue = (option.hasAttribute("value")? option.value : option.text);}//IEelse{optValue = (option.attributes["value"].specified ? option.value : option.text);}parts.push(encodeURIComponent(field.name) +"="+ encodeURIComponent(optValue));}}break;case undefined:  //fieldset元素没有type属性case "file":case "button":case "reset":case "submit":break;case "radio":case "checkbox":if(!field.checked){break;  //没有勾选的不用发送给服务器}default:if(field.name.length){parts.push(encodeURIComponent(field.name) +"="+ encodeURIComponent(field.value));}}}return parts.join("&");
}

表单(四)表单序列化相关推荐

  1. 远程集中抄表系统四表合一由武汉七叶研发

  2. 物理机存放mysql实例原则_MySQL优化笔记(四)--表的设计与优化(单表、多表)...

    前面讲了SQL优化以及索引的使用.设计优化了,那么接下来就到表的设计与优化啦!!!真实地去设计优化单表结构以及讲述多表设计基本原则(结合真实的生产环境的取舍来讲述). 文章结构:(1)单表设计与优化: ...

  3. 分步表单_表单设计-掌握表单设计方法(表单体验篇)

    全篇阅读大概需要15min,对表单设计不熟悉的同学看完后肯定会有不少的收获~~~ 说到表单其实在生活中可以接触到各种各样的表单,比如:驾照申请表.体检表.银行开户需要填写的表等等,这些都是表单,主要目 ...

  4. form表单中根据值判断是否disabled_Java 0基础入门 (Html表单、表单元素)

    上一篇:Java 0基础入门 (Html标签的使用) 表单在网页中主要负责数据采集功能. 一.表单实际应用场景 百度搜索 5173注册 如上两张图,图中的黑色线条是我画上去的,如果按照黑线,在Excl ...

  5. 第三章 表单与表单元素

    学习目标 理解表单的作用 理解表单与表单元素的关系 掌握表单标签及其属性 掌握各种表单元素标签及其属性 在Web网页中,浏览者经常需要与Web服务器进行数据交互.当浏览者需要填写数据并将这些数据发送到 ...

  6. mysql 单表多级查询_mysql单表与多表查询

    单表查询 """ 增: insert [into] [数据库名.]表名[(字段1[, ..., 字段n])] values (数据1[, ..., 数据n])[, ... ...

  7. mysql数据库:mysql增删改、单表、多表及子查询

    一.数据增删改 二.单表查询 三.正表达式匹配 四.多表查询 五.子查询 一..数据增删改 增加   insert [into] 表名[(可选字段名)] values(一堆值1),(一堆值2),... ...

  8. mysql 修改多表数据库_mysql数据库:mysql增删改、单表、多表及子查询

    本文目录: 一.数据增删改 增加数据 insert [into] 表名[(可选字段名)] values(一堆值1),(一堆值2),..... into 可以省略 表名后的字段可以选 如果写了 后面的v ...

  9. python 全栈开发,Day62(外键的变种(三种关系),数据的增删改,单表查询,多表查询)...

    一.外键的变种(三种关系) 本节重点: 如何找出两张表之间的关系 表的三种关系 一.介绍 因为有foreign key的约束,使得两张表形成了三种了关系: 多对一 多对多 一对一 二.重点理解如果找出 ...

  10. excel数据表单_Excel中的工作表数据输入表单

    excel数据表单 With a bit of programming, you can make it easy for users to enter data in an Excel workbo ...

最新文章

  1. 新手谈谈网站交互设计
  2. Tomcat 跨域问题的解决
  3. golang []byte 和 int 互转
  4. 初学数位DP--hdu 2089
  5. 论文浅尝 | 融合多层次领域知识的分子图对比学习
  6. 深度学习之图像识别基础篇——神经元与感知机
  7. 爬虫-通过正则表达式爬取学校选课网站的课程
  8. preg_match_all中的标记
  9. Netty工作笔记0031---NIO零拷贝应用案例
  10. Facebook广告与Google广告有什么不同?
  11. java全局校验拦截器
  12. Tracepro——解决辐照度图中关键区域对比度不明显问题
  13. 十三、VMware vSphere 6.7虚拟化云管理之13、VCSA6.7设置主机许可
  14. flac怎样转换成mp3格式
  15. java开发面试自我介绍模板_java应聘面试自我介绍范文
  16. 查看mysql 当前锁级别_mysql innodb下的锁及隔离级别
  17. 爱因斯坦是人类历史上最伟大的科学家吗?
  18. 全面接入:ChatGPT杀进10个商业应用,让AI替你打工
  19. NeurIPS'22杰出论文奖:3项研究出自华人团队,AlexNet获时间检验奖
  20. php var的解释

热门文章

  1. 2018年度总结,展望2019
  2. NLP(二十九)一步一步,理解Self-Attention
  3. 如何使用Hierarchy View
  4. 墨刀素材学堂开学啦!你要的优质素材都在这里
  5. Cisco Packet Tracer Student(思科) 设置中文
  6. .net core的学习资源
  7. 中职学校计算机实训室简介,中职学校计算机实训教学质量论文
  8. HTML5学习,常用常记(浏览器,更新)
  9. 操作系统OS学习笔记(1):操作系统的发展
  10. python朋友圈数据分析_第7天|16天搞定Python数据分析,盗墓笔记重现