将表单元素序列为对象代码实例

将表单元素序列为对象代码实例:
有时候将表单元素序列化一个对象然后再进行操作可能会更加便利,下面就是一段这样的代码能够实现此功能。
代码如下:

function serializeObject(form){
  var o={};
  $.each(form.serializeArray(),function(index){
    if(o[this[‘name‘]]){
      o[this[‘name‘]]=o[this[‘name‘]]+","+this[‘value‘];
    }
    else{
      o[this[‘name‘]]=this[‘value‘];
    }
  });
  return o;
}

以上代码实现了我们的要求,可以将表单元素序列化为一个对象,下面对代码做一下简单注释。
一.代码注释:
1.function serializeObject(form){},参数是一个form表单对象,当然必须是jQuery对象。
2.var o={},声明一个空对象用来存储表单元素的名称和value值,对象的属性名称是表单元素name属性值,属性值是表单元素的value属性值。
3.$.each(form.serializeArray(),function(index){}),form.serializeArray()会返回一个数组,元素是对象直接量,每一个对象直接量包含两个两个名值对,一个是name/name属性值,另一个是value/value属性值。$.each()可以遍历创建的数组。
4.if(o[this[‘name‘]]){o[this[‘name‘]]=o[this[‘name‘]]+","+this[‘value‘];},如果对象中已经存在响应的属性名,那么就进行字符串连接然后再次重置属性值,这个适用于向多个同名复选框被选中的类似情况。
5.else{ o[this[‘name‘]]=this[‘value‘]; } ,创建属性并赋值。
6.return o,返回生成的对象。
二.相关阅读:
1.serializeArray()函数可以参阅jQuery的serializeArray()方法一章节。 
2.对象直接量可以参阅js对象直接量简单介绍一章节。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=13566

更多内容可以参阅:http://www.softwhy.com/jquery/

时间: 2025-01-12 19:25:11

将表单元素序列为对象代码实例的相关文章

jquery设置表单元素为不可用代码实例

jquery设置表单元素为不可用代码实例:本章节通过简单的实例代码介绍一下如何将表单元素设置为不可用状态.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>蚂蚁部落</t

Ajax中通过JS代码自动获取表单元素值的示例代码

我们在使用Ajax的时候,通常需要获取表单元素值,然后发送给后台的服务器端程序处理.如果表单元素不多的情况我们常常会通过GET方式来获取表单元素值,但如果表单元素非常多,此时就需要用POST方式来获取表单元素值,那么如何来获取表单元素值呢?下面给出一段JS代码即可自动获取表单元素的值了 http://www.qidian.com/BookReader/1839917,60421843.aspx http://www.qidian.com/BookReader/1839917,60422045.a

将form表单元素转为实体对象 或集合 -ASP.NET C#

简介: 做WEBFROM开发的同学都知道后台接收参数非常麻烦 虽然MVC中可以将表单直接转为集实,但不支持表单转为 LIST<T>这种集合 单个对象的用法: 表单: <input name='id' value='1' > <input name='sex' value='男' > 后台: //以前写法 DLC_category d = new DLC_category(); d.sex = Request["sex"]; d.id = Conver

将表单元素转换为json格式对象实例代码

将表单元素转换为json格式对象实例代码:在实际引用中,有可能需要将表单元素转换为json格式对象,也就是对象直接量以便于处理,下面就是一段这样的实例代码.代码实例如下: <script type="text/javascript"> (function($){ $.fn.serializeObject=function(){ var inputs=$(this).find("input,textarea,select"); var o={}; $.ea

使用jquery实现的清空表单元素代码实例

使用jquery实现的清空表单元素代码实例:如果表单的元素较多的话,如果想情况以前填写的内容可能有点耗费体力,不够人性化,下面就介绍一下如何利用jquery代码实现快捷清除表单元素内容的功能,先看一段代码实例: $('#theform')[0].reset(); 很朋友可能认为上面的代码就完全实现我们的要求,其实这是错误的,reset()函数是重置的意思,也就是将表单元素的值重置为默认值而不是清空,如下面的文本框: <input type="text" value="蚂

JavaScript遍历HTML表单元素及表单定义

如下JavaScript代码,通过document对象,遍历HTML所有元素(HTML DOM Element ). <html> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <head> <script> //显示所有存在"ID"属性的HTML元素 function displayallelem(){ va

表单元素的submit()方法和onsubmit事件

1.表单元素中出现了name="submit"的元素 2.elemForm.submit();不会触发表单的onsubmit事件 3.动态创建表单时遇到的问题 表单元素拥有submit方法,同时也具有onsubmit事件句柄,用于监听表单提交.可以使用elemForm.submit();方法触发表单提交. 1.表单元素中出现了name="submit"的元素 这种情况下elemForm.submit();将不会触发表单提交,因为表单原始的submit方法将会被覆盖(

在servlet中批量获取表单元素的值

如果页面有大量的表单元素,在springMVC中一般都是表单和pojo对象做相应的对应,或者直接通过request获得对象,但是还有另外一种得到表单元素的方法,具体代码如下: // java.util.Enumeration<String> req是HttpServletRequest对象 Enumeration<String> paras = req.getParameterNames(); while (paras.hasMoreElements()) { String s =

HTML 5 服务器发送事件、Input 类型、表单元素、表单属性

HTML5 服务器发送事件(server-sent event)允许网页获得来自服务器的更新. Server-Sent 事件 - 单向消息传递 Server-Sent 事件指的是网页自动获取来自服务器的更新. 以前也可能做到这一点,前提是网页不得不询问是否有可用的更新.通过服务器发送事件,更新能够自动到达. 例子:Facebook/Twitter 更新.估价更新.新的博文.赛事结果等. 浏览器支持 所有主流浏览器均支持服务器发送事件,除了 Internet Explorer. 接收 Server