利用JS如何获取form表单数据


Posted in Javascript onDecember 19, 2019

前言

本文主要给大家介绍的是关于利用JS获取form表单数据的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

方法如下:

1.有的时候想偷点懒,页面上有大量的表单提交数据,每次单独获取都比较麻烦。代码冗余度也比较多,因此封装了一个方法。

2. 表单元素必须要有name属性,name属性是向后端提交的字段数据。

3.html代码

<h3>下拉框</h3>
 <select name="sel" id="sel" class="query">
  <option value ="sel-1">sel-1</option>
  <option value ="sel-2">sel-2</option>
 </select>
 <h3>输入框</h3>
 <input type="text" name="text1" class="query" value="hello" />
 <input type="text" name="text2" class="query" value="word" />
 <h3>密码框</h3>
 <input type="password" name="password" class="query" value="123456" />
 <h3>单选框</h3>
 单选1<input type="radio" name="radio" class="query" value="r1" checked />
 单选2<input type="radio" name="radio" class="query" value="r2" checked/>
 单选3<input type="radio" name="radio" class="query" value="r3" />
  <h3>复选框</h3>
 复选框1<input type="checkbox" name="check" id="" class="query" value="c1" checked/>
 复选框2<input type="checkbox" name="check" id="" class="query" value="c2" />
 复选框3<input type="checkbox" name="check" id="" class="query" value="c3" checked/>
 <h3>search</h3>
 <input type="range" name="range" id="" class="query" value="" />
 <input type="color" name="color" id="" class="query" value="" />
 <h3>
  <button type="button" id="save">
   提交
  </button>
 </h3>

4.此处引入了JQ库。

4.1js代码块

使用说明:调用方法的时候传入class名称即可。

// 封装方法,获取到form表单的数据。使用此方法,表单元素必须存在那么属性。
  //el:元素的class名称。
  function getParameter(el){
   var obj={};
   $(el).each(function(index,item){
    // 判断元素的类型
    if(item.type=="text" || item.type=="password" || item.type=="select-one" || item.type=="tel" || 
     item.type=="search" || item.type=="range" || item.type=="number" || item.type=="month" || 
     item.type=="email" || item.type=="datetime-local" || item.type=="datetime" || item.type=="date" || 
     item.type=="color"){
     //获取到name的值,name的值就是向后台传递的数据
     obj[$(this).attr("name")]=$(this).val();
    }else if(item.type=="checkbox"){
     var stamp=false;
     if($(this).attr("name") && !stamp){
      stamp=false;
      // 获取到复选框选中的元素
      var checkboxEl=$("input[name="+$(item).attr('name')+"]:checked");
      if(checkboxEl){
       var checkboxArr=[];
       // 取出复选框选中的值
       checkboxEl.each(function(idx,itm){
        checkboxArr.push($(itm).val());
       });
       obj[$(this).attr("name")]=checkboxArr.join(",");
      }
      
     }
    }else if(item.type=="radio"){
     // 获取到单选框选中的值
     var radio_val=$("input[name="+$(item).attr('name')+"]:checked").val();
     if(radio_val){
      obj[$(item).attr("name")]=radio_val;
     }
    }
   });
   return obj;
  }
  // 调用方法
  $("#save").click(function(){
   var parameter=getParameter(".query");


 
console.log(parameter); 


 });

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
两个listbox实现选项的添加删除和搜索
Mar 01 Javascript
jQuery函数的等价原生函数代码示例
May 27 Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 Javascript
jquery对table中各数据的增加、保存、删除操作示例
May 14 Javascript
JQuery中serialize()、serializeArray()和param()方法示例介绍
Jul 31 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(三)
Sep 14 Javascript
Bootstrap中datetimepicker使用小结
Dec 28 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
Nov 22 Javascript
Nuxt.js踩坑总结分享
Jan 18 Javascript
javascript 代码是如何被压缩的示例代码
May 06 Javascript
解决vue+elementui项目打包后样式变化问题
Aug 03 Javascript
如何利用JS将手机号中间四位变成*号
Sep 29 Javascript
在Vue项目中使用Typescript的实现
Dec 19 #Javascript
JS数据类型STRING使用实例解析
Dec 18 #Javascript
JS精确判断数据类型代码实例
Dec 18 #Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 #Javascript
小程序简单两栏瀑布流效果的实现
Dec 18 #Javascript
js数据类型转换与流程控制操作实例分析
Dec 18 #Javascript
vue不操作dom实现图片轮播的示例代码
Dec 18 #Javascript
You might like
php INI配置文件的解析实现分析
2011/01/04 PHP
php学习笔记 [预定义数组(超全局数组)]
2011/06/09 PHP
PHP 使用pcntl和libevent 实现Timer功能
2013/10/27 PHP
php中cookie的使用方法
2014/03/29 PHP
php使用APC实现实时上传进度条功能
2015/10/26 PHP
DB.ASP 用Javascript写ASP很灵活很好用很easy
2011/07/31 Javascript
JS增加行复制行删除行的实现代码
2013/11/09 Javascript
jQuery客户端分页实例代码
2013/11/18 Javascript
yepnope.js使用详解及示例分享
2014/06/23 Javascript
javascript实现十秒钟后注册按钮可点击的方法
2015/05/13 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
DeviceOne 让你一见钟情的App快速开发平台
2016/02/17 Javascript
基于jQuery实现仿QQ空间送礼物功能代码
2016/05/24 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
2016/07/08 Javascript
很实用的js选项卡切换效果
2016/08/12 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
2016/12/19 Javascript
纯js实现动态时间显示
2020/09/07 Javascript
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
2018/12/28 Javascript
js实现简单的日历显示效果函数示例
2019/11/25 Javascript
树莓派中python获取GY-85九轴模块信息示例
2013/12/05 Python
python实现根据窗口标题调用窗口的方法
2015/03/13 Python
如何使用VSCode愉快的写Python于调试配置步骤
2018/04/06 Python
解决PyCharm不运行脚本,而是运行单元测试的问题
2019/01/17 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
初次部署django+gunicorn+nginx的方法步骤
2019/09/11 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
Python环境使用OpenCV检测人脸实现教程
2020/10/19 Python
护理专业应届毕业生推荐信
2013/11/15 职场文书
财务经理的岗位职责
2013/12/17 职场文书
詹天佑教学反思
2014/04/30 职场文书
国际贸易专业求职信
2014/06/04 职场文书
教你用python实现12306余票查询
2021/06/30 Python
html5表单的required属性使用
2021/07/07 HTML / CSS
Python 键盘事件详解
2021/11/11 Python
Redis如何使用乐观锁(CAS)保证数据一致性
2022/03/25 Redis