JS动态添加元素的事件动态绑定
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>选项</title> <script type="text/javascript" src="http://js.tgimg.cn/jquery/base/jquery.min.js"></script> <script>
$(function () {
//$("input[name=detailUrl]").blur(function () {
// console.log(1111);
//})
//後面添加的元素無法綁定事件,需預加載
$("#dfd").on("blur", "input[name=detailUrl]", function () {
var url = $(this).val()
}); $('#modify_bt').on('click', function () {
alert($("input[name=detailUrl]").length);
var detailUrl = $("input[name=detailUrl]");
var arrDetailUrl = [];
console.log(arrDetailUrl.join(','));
detailUrl.each(function () {
arrDetailUrl.push($(this).val());
}) console.log(arrDetailUrl.join(','));
});
// 添加选项
$("#opbtn").click(function () {
if ($("#opts>li").size() < 6) {// 最多添加6个选项
$("#opts").append("<li><input /></li>");
} else {// 提示选项个数已经达到最大
$("#optips").html("选项个数已经达到最大,不能再添加!");
$("#optips").css({ "color": "red" });
} }); $("#opbtn1").click(function () {
if ($("input[name=appendDetailUrl]").size() < 6) {// 最多添加6个选项
$("#appendDetailUrl").before("<div class='col-sm-4'><input class='form-control' id='detailUrl' name='detailUrl' type='text' placeholder='具体网址' /></div>");
} else {// 提示选项个数已经达到最大
$("#optips").html("选项个数已经达到最大,不能再添加!");
$("#optips").css({ "color": "red" });
} }); // 删除选项
$("#delbtn").click(function () {
if ($("#opts>li").size() <= 0) {
$("#optips").html("已经没有选项可以删除了!");
$("#optips").css({ "color": "red" });
} else {
// 删除选项,每次删除最后一个
$("#opts>li").last().remove();
} }); }); </script> <style>
* {
margin: 0px;
padding: 0px;
} #dv {
width: 100px;
height: 100px;
background-color: yellow;
margin: 0px auto 0px;
}
</style> </head>
<body>
<div style="margin: 50px;">
<input id="opbtn" type="button" value="添加选项" />
<input id="opbtn1" type="button" value="添加选项" />
<input id="delbtn" type="button" value="删除选项" />
<input id="wrapbtn" type="button" value="包围DIV" />
<ol id="opts" type="A"></ol> <!-- 提示语 -->
<span id="optips"></span>
</div>
<div class="form-group" id="dfd">
<label class="col-sm-2 control-label" for="detailUrl">具体网址</label>
<div class="col-sm-4">
<input class="form-control" id="detailUrl" name="detailUrl" type="text" placeholder="具体网址" />
</div>
<input type="button" class="btn" value="追加具体网址" id="appendDetailUrl" />
</div>
<div class="form-group">
<div class="col-sm-offset-8 col-sm-5">
<input type="button" class="btn" value="保存" id="modify_bt" />
</div>
</div> </body>
JS动态添加元素的事件动态绑定的更多相关文章
- js动态添加元素绑定事件问题
//开始是直接普通写的绑定click事件 其中li a i 中的i是动态添加的 结果是触发不了..$("li a i").click(function () { $(this).m ...
- Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法
Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法 2014-03-27 11:44:46| 分类: Easy UI|举报|字号 订阅 可以使用$.parser.pa ...
- js 动态添加元素(div、li、img等)及设置属性
把一串 html 标签赋给一个 javascript 变量,除属性的值要用转义的双引号外,某些时候字符串还很长,显得有些复杂.如果用 js 动态添加元素,就不会有那么复杂的字符串出现,代码阅读性强一点 ...
- js 动态加载事件的几种方法总结
本篇文章主要是对js 动态加载事件的几种方法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 有些时候需要动态加载javascript事件的一些方法往往我们需要在 JS 中动态添 ...
- jqery 动态添加元素 绑定事件
jQuery动态添加元素: var url = "...";//服务地址 $.ajax({ type: 'post', url: url, data:{fireId:fireId} ...
- js 动态添加元素 删除元素逻辑
js 动态添加元素 删除元素逻辑 var obox=document.getElementById("box"); oadd.onclick=function(){ var odi ...
- SVG 动态添加元素与事件
SVG文件是由各个元素组成.元素由标签定义,而标签格式即html的元素定义格式.但是载入一个SVG文件,却无法通过常规的js获取对象方式来获取到SVG中定义的元素,更无法通过这种方式来动态添加SVG元 ...
- jquery html 动态添加元素绑定事件
由于实际的需要,有时需要往网页中动态的插入HTML内容,并在插入的节点中绑定事件处理函数.我们知道,用Javascript向HTML文档中 插入内容,有两种方法, 一种是在写HTML代码写入JS,然后 ...
- jQuery1.9为动态添加元素绑定事件以及获取和操作checkbox的选择属性
1.jQuery为动态添加的元素绑定事件:在1.7之后,添加了live()方法,1.9后又被移除,1.9中可用on()方法: $(function() { $('.btn').on('click', ...
随机推荐
- bzoj 1023: [SHOI2008]cactus仙人掌图【tarjan+dp+单调队列】
本来想先求出点双再一个一个处理结果写了很长发现太麻烦 设f[u]为u点向下的最长链 就是再tarjan的过程中,先照常处理,用最长儿子链和次长儿子链更新按ans,然后处理以这个点为根的环,也就是这个点 ...
- poj 2891 Strange Way to Express Integers【扩展中国剩余定理】
扩展中国剩余定理板子 #include<iostream> #include<cstdio> using namespace std; const int N=100005; ...
- 【Tip】JavaScript
『JavaScript』 『引用网络资源』 JQuery <script src="http://code.jquery.com/jquery-latest.js">& ...
- dd 使用记录
使用dd的工具 1)测试写速度 2)测试读速度 3)测试读写速度 dd说明: if是输入文本,of是输出文本,bs是块大小,count是你指定读写块的数量 /dev/zero是从内存里面读取,不会产生 ...
- poj 1723 Soldiers【中位数】By cellur925
题目传送门 题目大意:平面上有n个士兵,给出每个士兵的坐标,求出使这些士兵站好所需要的最少移动步数.站好要求:所有士兵y相等,x相邻.即达到 (x,y), (x+1, y), (x+2,y)……的状态 ...
- 决斗(Headshot )
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; ; char ...
- spring @InitBinder
/** * 将字符串日期转化为Date类型 * @param binder */ @InitBinder protected void initBinder(WebDataBinder binder) ...
- Homebrew 常用命令
Homebrew 常用命令 Homebrew 介绍 Homebrew也称brew,macOS下基于命令行的最强大软件包管理工具,使用Ruby语言开发.类似于CentOS的yum或者Ubuntu的apt ...
- 【模板】c++动态数组vector
相信大家都知道$C$++里有一个流弊的$STL$模板库.. 今天我们就要谈一谈这里面的一个容器:动态数组$vector$. $vector$实际上类似于$a[]$这个东西,也就是说它重载了$[]$运算 ...
- Educational Codeforces Round 19 C
Description Petya recieved a gift of a string s with length up to 105 characters for his birthday. H ...