如何在jquery中的append函数中为html标签生成变量id
how to generate variable ids for html tags inside append function in jquery
这是我的代码,我想在append函数内为html标记生成变量id,而id在声明变量但不在内部的外部生成。。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Bind onclick Event to Dynamically added Elements</title>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="scriptj.js"></script>
<script type="text/javascript">
i=0;
$(document).ready(function(){
$("#add").click(function func(){
++i;
console.log(i);
var rem = 'remove' + i; // here the ids are generating but they
var tblid = 'id' + i; // not going inside append function
var imgdiv = 'idiv' + i;
var imag = 'img' + i;
$("#diva").append("<div id=tblid style='border:2px solid black; border-radius:5px;'><table align='right'><tr><td><a href='javascript:void(0);' id=rem >Delete</a></td></tr></table><table align='center'><tr><td>Section Title</td><td><input type='textbox' size='160' /></td></tr><tr><td>Descrtiption</td><td><textarea rows='5' cols='162' style='border-radius:5px;'></textarea><td></tr></table><br>   <input type='file' onchange='readURL(this);'/><div id=imgdiv style='border: 1px solid black'><img id=imag alt='your image' /></div></div><br>");
});
$(document).on("click", "a#rem" , function() {
$(this).parent().parent().parent().parent().parent().remove();
});
});
</script>
</head>
<body>
<table><tr><td><button id="add" style='border-radius:3px;'>Add Section</button></td></tr></table>
<br>
<div id="diva">
</div>
</body>
</html>
您没有调用代码中的变量。它们被解释为字符串。
例如,在代码的这一部分中:
$("#diva").append("<div id=tblid style='border:2px solid black; ....
tblid被认为是一个字符串,而不是一个变量。您需要连接字符串和变量,如下所示:
$("#diva").append("<div id=" +tblid+ " style='border:2px solid black; ...
在构建标记时使用变量。
var rem = 'remove' + i; // here the ids are generating but they
var tblid = 'id' + i; // not going inside append function
var imgdiv = 'idiv' + i;
var imag = 'img' + i;
var m ="<div id='"+tblid+"' style='border:2px solid black;
border-radius:5px;'><table align='right'><tr><td><a href='javascript:void(0);'
id='"+rem+"' >Delete</a></td></tr></table>
<table align='center'>
<tr><td>Section Title</td><td><input type='textbox' size='160' /></td></tr>
<tr><td>Descrtiption</td><td><textarea rows='5' cols='162'
style='border-radius:5px;'></textarea><td></tr></table>
<br>   <input type='file' onchange='readURL(this);'/>
<div id='"+imgdiv+"' style='border: 1px solid black'>
<img id='"+imag+"' alt='your image' /></div></div>";
$("#diva").append(m);
但是,您并不总是需要设置这些id。您总是可以使用closest()
、find()
方法来获取相关项。如果您想保留一些要发送的数据,请将其保留在HTML5属性中。
您应该这样编写.append()
,因为您正在连接一个变量。
$("#diva").append("<div id='" + tblid + '>");
相关文章:
- 如何在tinymce编辑器中将点击事件绑定到html标签
- 从模板标签获取html
- 如何将具有相同功能的两个select html标签的两个JS组合在一起
- Html不是'我没认出Angularjs吐出来的标签
- 带有html标签的Summernote内容
- 为什么我的HTML标签消失了
- 不使用自定义CSS或HTML(使用框架方法)的角度材质文本输入或文本区域标签大小
- 如何忽略单词like“”中的未使用空格;测试-文本”;同时构建html标签
- 在AngularJS中过滤-html标签中的文本
- 如何在另一个 html 标签内选择 web 元素硒 Web 驱动程序与 html 源
- 选择标签 HTML 上的值将数组转换为字符串 Javascript
- 如何以编程方式切换标签HTML/js
- 如何使用NodeJs删除非标签Html元素
- 知道什么时候“音频”标签HTML已经发挥了作用
- 通过标签html中的照片列表更改
- 标签内的另一个标签html
- Sup标签内的标题标签html
- 当我选择另一个选择标签HTML<选择>
- 从节点检索标签HTML
- 如何从网页中删除所有标签(HTML JS PHP CSS JQUERY)