简单描述:一个form表单里有十几个input或者select,要获取到他们的值,我的做法一直都是$("#id").val();这样做本来没什么说的,但是如果有很多呢,就很麻烦,看了同事的一段代码,很亮眼(其实 是我菜 ヾ(◍°∇°◍)ノ゙,没见过这种写法)

简介:序列化form表单的数据成JS对象。

代码:

//需要引入的jar包 任意一个都可以
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.serializejson.js"></script>
//html代码 
<form action="" class="horizontal-form" method="post" id="addForm" autocomplete="off"
onSubmit="return false" enctype="multipart/form-data">
<input hidden="hidden" type="text" id="planStatus" name="planStatus"/>
<input type="text" id="planName" name="planName" class="form-control"
th:value="${plan?.planName}"
placeholder="请输入名称"
maxlength="50"/>
<input type="text" id="planCode" value="根据系统编码规则自动生成" disabled="disabled"
name="planCode" class="form-control"
placeholder="自动生成"
maxlength="50"/>
<select id="orgName" class="form-control" placeholder="请选择管理机构">
<option th:each="org : ${orgs}" th:value="${org.orgId}" th:text="${org.orgName}"
xmlns:th="http://www.w3.org/1999/xhtml">
      </option>
</select>
<select id="isOpen" name="isOpen" class="form-control js-example-basic-single"
placeholder="开放使用">
<option value="0" selected="selected">不开放</option>
<option value="1">开放</option>
</select>
<div class="col-md-6">
<label class="control-label flex" style="margin-top: 10px;">
上传图标<span class="star align-items">*</span>
</label>
<img th:src="@{/assets-new/apps/img/shangchuan.png}" id="imgPlanIcon"
width="35px" height="35px"/>
<input type="file" id="seledIcon" style="display:none"/>
</div>
<input type="hidden" name="planIcon" th:value="${plan?.planIcon}" id="planIcon"/>
<textarea id="planDesc" name="planDesc" class="form-control" placeholder="请填写描述信息"
th:text="${plan?.planDesc}" maxlength="200">
         </textarea>
<input type="text" oninput="clearNoNum(this)" id="sellPrice" name="sellPrice"
class="form-control"
placeholder="请输入销售价" th:value="${plan?.sellPrice}"
maxlength="50"/>
</form>
//js代码
var planJson = JSON.stringify($("#addForm").serializeJson());
//说明一下:$("#addForm").serializeJson() 就是把form中所有的元素序列化成为一个数据对象,名值对的形式
//JSON.stringify()是将一个javascript的值(对象或数组)转换成一个json字符串,可以传递给后台,后台通过getParameter("planJson")取值

总结:就是通过使用serializeJson()来完成js对象的封装

获取表单内的所有元素的值 表单格式化插件jquery.serializeJSON的更多相关文章

  1. 表单格式化插件jquery.serializeJSON

    前言 前端在处理含有大量数据提交的表单时,除了使用Form直接提交刷新页面之外,经常碰到的需求是收集表单信息成数据对象,Ajax提交. 而在处理复杂的表单时,需要一个一个区手动判断处理字段值,显得非常 ...

  2. HTML <fieldset> 标签将表单内的相关元素分组

    <fieldset> 标签将表单内容的一部分打包,生成一组相关表单的字段. 当一组表单元素放到 <fieldset> 标签内时,浏览器会以特殊方式来显示它们,它们可能有特殊的边 ...

  3. 在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串

    //封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts ...

  4. 原 form 表单中 disabled 属性的元素不参与表单提交

    https://blog.csdn.net/benben683280/article/details/79173336

  5. 获取HTML网页中option标签元素的值

    在进行表单元素的操作时,难免会遇到对option元素的挑选,下面的示例代码能够很好的获取到你option元素选择的值,如果要传递给后端,可通过ajax或者其他方式传递即可. 示例代码 <!doc ...

  6. HTML笔记(五)表单<form>及其相关元素

    表单标签<form> 表单是一个包含表单元素的区域. 表单元素是允许用户在表单中输入信息的元素. 输入标签<input> 输入标签的输入类型由其类型属性type决定.常见的输入 ...

  7. jQuery-处理元素内容、表单元素

    处理元素内容 1.text方法 使用说明: 1)不传参数 得到jQuery对象内所有元素及其后代元素的文本内容 2)传入用于设置匹配元素的文本内容 3)传入function 使用函数来设置jQuery ...

  8. JavaScript之控制表单元素的值

    表单元素.value 获取表单元素的值 表单元素.value='这是修改后的值' 修改表单元素的值 案例: (1)html <input type="text" id=&qu ...

  9. jquery获取元素索引值index()

    jquery获取元素索引值index()方法实例. jquery获取元素索引值index()方法: jquery的index()方法 搜索匹配的元素,并返回相应元素的索引值,从0开始计数. 如果不给 ...

随机推荐

  1. SqlServer_存储过程

    1.查询全部数据 create proc stu1 as begin select * from Students end go exec stu1 2.根据姓名查询信息 --存储过程内部自带值cre ...

  2. vue 学习笔记—Resource

    1.首先是引入  或者用npm来安装  cnpm i vue-resource --save(推荐) 3.提供的api 关于请求写法: get(){ // get请求 this.$http.get( ...

  3. C&C++动态分配内存(手动分配内存)三种方式

    1. malloc函数 函数原型:void *malloc(unsigned int size)函数的作用是:在内训的动态存储区开辟一个size个字节的连续空间,返回所分配区域的首字节地址. 可以看到 ...

  4. 2016221 Java第二周学习补充

    对switch语句的理解 在程序中遇到switch时,要将switch后的表达式与后续程序中的case常量进行比较,如若相等,程序将执行后面所有的case语句,直到遇到break 为止.如果走完整个程 ...

  5. Sql server—— for xml path简单用法(可以按照分组把相同组的列中的不同的值,像字符串一样拼接在一起显示在分组之后的列中。)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAI8AAACWCAIAAABo2EyXAAAKeklEQVR4nO2dy27rNh7G+U7CFIrfZX

  6. [Kubernetes]安装和配置kubectl

    安装kubectl 安装kubectl比较简单,几条命令即可(#后面为注释内容): #下载最新版本: curl -LO https://storage.googleapis.com/kubernete ...

  7. JavaScript-简介、ECMAScript5.0

    Javascript简介 web前端有三层: HTML:从语义的角度,描述页面的结构 CSS:从审美的角度,描述样式(美化页面) Javascript:从交互的角度,描述行为(提升用户体验) Java ...

  8. FAT32文件格式示例解析

    1.前言 本文主要以一个示例来分析FAT32文件系统的格式,对FAT32文件系统的各个区域详细分析. 2.FAT32文件系统典型分区 3.FAT32文件系统示例 按如下步骤在ubuntu下创建FAT3 ...

  9. jenkins服务器上安装配置Android SDK

    1.下载Android SDK http://tools.android-studio.org/index.php/sdk/   我下载的是:android-sdk_r24.4.1-linux.tgz ...

  10. Linux运行时I/O设备的电源管理框架【转】

    转自:https://www.cnblogs.com/coryxie/archive/2013/03/01/2951243.html 本文介绍Linux运行时I/O设备的电源管理框架.属于Linux内 ...