h5 页面点击添加添加input框
h5 页面点击添加添加input框
前段时间有个需求,页面要能点击添加按钮控制input框的个数,当时感觉有点难,就没做,这两个又遇到了,没办法写了个简单的
效果图,加号增加,减号减少

直接上代码, 用来bootstrap的组件
div部分
<div class="container col-md-8" style="margin:100px">
<form id="mom" class="form-horizontal">
<div class="form-group">
<label class="col-sm-2 control-label">url</label>
<div class="col-sm-10">
<input id="url" type="text" class="form-control" name="url">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">url1</label>
<div class="col-sm-10">
<input id="url1" type="text" class="form-control" name="url1">
</div> </div> <div id="1" class="form-group">
<label class="col-sm-2 control-label"> 字段1 </label>
<div class="col-sm-10">
<input type="text" id="key0" value="">
<input type="text" id="val0" value="">
<input id="add" type="button" value="+">
<input id="pop" type="button" value="-">
</div>
</div> </form>
<button id="send_mm" class="btn btn-default" style="margin-left:150px">Button</button>
</div>
js 部分
<!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script> var num = 0;
var data1 = {}; $("input[id='add']").click(add);
$("input[id='pop']").click(pop);
$("button[id='send_mm']").click(send_urll);
var momEle = document.getElementById("mom"); function add() {
num++;
console.log(num); var divEle = document.createElement("div");
divEle.setAttribute("class", "form-group");
divEle.setAttribute("id", `${num}`);
var inner = `<label class="col-sm-2 control-label"> 字段 ${num} </label> <div class="col-sm-10"> <input type="text" value="" id="key${num}"> <input type="text" value="" id="val${num}" </div>`;
divEle.innerHTML = inner;
alert(divEle.innerHTML); momEle.appendChild(divEle); } function pop() {
if (num != 0) {
var current_dom = document.getElementById(`${num}`); momEle.removeChild(current_dom); num--
} else {
alert('最少有一个字段')
} } function send_urll() { for (i = 0; i <= num; i++) {
var k = "key" + i;
var v = "val" + i;
var key = document.getElementById(`${k}`).value;
var val = document.getElementById(`${v}`).value;
// console.log(document.getElementById(`${k}`).value,document.getElementById(`${v}`).value); data1[key] = val }
console.log(data1); var url = document.getElementById('url').value;
var url1 = document.getElementById('url1').value; $.ajax({
url: "/get_url/",
type: "POST",
data: {"url": url, "url1": url1, "data1":JSON.stringify(data1)},
success: function (data) {
alert(JSON.parse(data));
data1 = {}
}
}) } </script>
就是简单的dom操作,添加时增加div标签,难点在于每个input要有自己的key,当时还遇到一个坑

就是拼接的时候要用(`),不能用(')("), 这是es6的新语法
附上大佬博客的链接
https://www.cnblogs.com/liwenzhou/p/9249932.html#autoid-2-2-1
h5 页面点击添加添加input框的更多相关文章
- 【HTML5】页面点击按钮添加一行 删除一行 全选 反选 全不选
页面点击按钮添加一行 删除一行 全选 反选 全不选 页面效果图如下 html页面代码 <!DOCTYPE html> <html> <head> & ...
- js-禁止微信H5页面点击右上角菜单时出现“复制链接”,且分享仅支持微信分享
禁止微信H5页面点击右上角菜单时出现“复制链接”,这个问题已经影响到我很久很久了,起码有2年了, 昨天写H5活动的时候,需求有一个是:可分享,但是禁止复制活动链接, 这一下,就逼我务必好好研究研究了. ...
- 移动端开发H5页面点击按钮后出现闪烁或黑色背景的解决办法
H5页面在IOS端测试的时候发现,点击按钮会闪动,出现一个黑色的背景一闪而过,影响用户体验.最后通过度娘,找到解决方法: 就是给点击的元素添加一个CSS属性或者全局添加一个css. -webkit-t ...
- 解决H5页面点击一瞬间出现灰色背景的问题
H5页面有时会出现点击一瞬间出现灰色背景的问题(ios会,安卓不会),解决方法: 加上样式: -webkit-tap-highlight-color: transparent; 如果以上方法不行,则是 ...
- scrollReveal.js导致页面加载完之后页面中点击事件添加的css参数失效了(我的Hexo next博客引发的问题)
文章目录 时间 背景 问题解决 个人博客:https://mmmmmm.me 源码:https://github.com/dataiyangu/dataiyangu.github.io 时间 2019 ...
- 移动端h5页面的那些坑
最近一直在写移动端页面,由于之前写移动端写的比较少,所以此次踩过许多坑.特此总结一下: 1.<input type='button'>背景色在ios中的兼容性,颜色发白 解决办法:在全局样 ...
- 吐血bug-- 多个input框接连blur事件导致alert接连弹出
本来今天想记录一下Flow在vue源码中的应用,结果临时触发了个bug... bug描述: elementUi + Vue 技术 需求:一个表格中有至少两条数据,每条数据都有input框,在失去焦点后 ...
- H5页面怎么跳转到公众号主页?看过来
前言: 做公众号开发的小伙伴,可能会遇到这种需求: 在一个H5页面点击一个关注公众号按钮跳转到公众号主页. 听到这个需求的一瞬间,疑惑了!这不可能! 摸了摸高亮的额头!没办法,做还是要做的 开始上解决 ...
- h5页面添加背景音乐
[需求]h5页面添加背景音乐,支持微信.QQ.各种APP. [实现思路]1.通过audio标签,设置自动播放,是一种方法,但是此方法只适合微信.QQ,并不兼容我司的APP,需要主动触发下播放事件. 2 ...
随机推荐
- Gcc对头文件与库文件的搜索路径
一.简介 对头文件与库文件的搜索路径不太清楚,编译.运行时老碰到问题,ldd查看程序的链接时,总是出现unkown链接. 二.头文件 gcc 在编译时寻找所需要的头文件 : 1)搜寻会从-I开始 2) ...
- 博客搬家到blog.wu8685.com
博客园算是我最开始来的地方了吧,当时还在学校,为了找工作会看一些理论方面的东西,所以写的都是偏理论的心得. 后来参加了工作,开始忙起来,也就没有时间来更新了.其实忙都是借口,这点还是需要反思的. 大概 ...
- [Training Video - 3] [Java Introduction] [Object Oriented Programming]
Static and non-Static : 非静态方法(不带static)可以访问静态变量和方法(带static),但是反过来就不行. 类的静态成员(变量和方法)属于类本身,在类加载的时候就会分 ...
- [Training Video - 1] [Selenium Basics] [What is Selenium IDE,RC,Webdriver, TestNG, Junit And Ant]
Selenium IDE (Only support in Firefox): - Record and Run - UI interface - User extensions - Conversi ...
- [Training Video - 6] [File Reading] Making a Jar file with eclispe, Importing custom jars in SoapUI
Code example : package com.file.properties; import java.io.FileInputStream; import java.util.Propert ...
- eclipse的thrift插件
插件网址为:http://thrift4eclipse.sourceforge.net/en/install.html,经测试对Eclipse 4.4.2也有效: Eclipse 4.4.2上的安装步 ...
- Linux 基础教程 27-ss和ip命令
什么是netstat 在Linux系统中输入 man netstat,显示的结果如下所示: netstat - Print network connections, routing table ...
- Codeforces766B Mahmoud and a Triangle 2017-02-21 13:47 113人阅读 评论(0) 收藏
B. Mahmoud and a Triangle time limit per test 2 seconds memory limit per test 256 megabytes input st ...
- ARPG游戏打击感相关的技术简单总结
说好的技术总结,根据近期的工作总结一下体现游戏打击感相关的技术.一般arpg的游戏打击感除了场景的氛围的烘托,策划的数值:连击,奖励伤害数字的连贯积累反馈,硬直加物理击飞ragdoll,更不可忽视的也 ...
- Oracle Key Flexfields Qualifiers
Oracle Key Flexfields Qualifiers 1. Application Developer è Flexfield è Key è Register Title: Ac ...