动态添加新元素并更改其内容
Dynamically add new element and change its content
我想"复制"某些元素,并用正则表达式更改其中的一些文本。
到目前为止还不错:http://jsfiddle.net/8ohzayyt/25/)
$(document).ready(function () {
var divs = $('div');
var patt = /^'d'./;
var match = null;
for (i = 0; i < divs.length; i++) {
match = ($(divs[i]).text().match(patt));
$(divs[i]).text($(divs[i]).text().replace(match[0], "5."));
}
});
HTML
<div>1. peppers</div>
<div>2. eggs</div>
<div>3. pizza</div>
这正是我想要的方式,但我想动态添加一些内容,但当我尝试更改复制的divs
的内容时,什么都不会发生。
请参考这把小提琴:http://jsfiddle.net/8ohzayyt/24/
我发表了一些评论,以更清楚地表明我想要实现的目标。
我认为您的问题是您没有将元素传递给changeLabel
函数,而只是传递了一个字符串。
看看这个解决方案:http://jsfiddle.net/8ohzayyt/26/
这是我为使您的代码工作而更改的行:
var newContent = $("<hr/><div id='destination'>" + $("#holder").html() + "</div>");
我刚刚用$()
包装了你的HTML。这将从字符串中创建一个元素。
try:
var newContent = $("<hr/><div id='destination'>" + $("#holder").html() + "</div>");
编辑:简要解释我做了什么。
为了使$(el).find('div');
工作,changeLabel()
需要一个元素。与将newContent
作为字符串传递不同,执行上述操作将使其作为元素传递,从而使$(el).find('div');
工作。
相关文章:
- 将按钮添加到新元素中
- 如何在javascript上向数组的对象添加新元素
- 如果数组仍在执行,async.forEach()将运行我添加到数组中的新元素
- 剑道UI下载列表:如何动态添加新元素
- 如何将新的键/值对元素添加到现有数组
- 动态添加新元素并更改其内容
- 没有为Ajax添加的新元素注册Jquery事件
- jquery添加新元素
- 如何在遍历表和添加新元素时获得tr的索引
- 从HTML表单中获取计算得到的JavaScript数据,并将其作为新元素添加到相同的表单操作中以使用PHP保存
- 添加新元素属性
- jQuery:将类添加到新元素后,可以't通过单击该类来触发事件
- 添加新元素后不会触发事件
- 如何在使用javascript添加新元素后更新本地html文件
- 数据表 sDom 质询将新元素添加到表的左下角
- Javascript为每个新元素添加新的订单id
- 在使用AJAX获取html内容后,向新元素添加监听器的正确方法是什么?(jQuery,Javascript)
- 为主体上添加的每个新元素添加事件侦听器
- 如何将新元素添加到表的顶部jscript-jquery
- 当每个元素都是使用angularJS从服务器动态创建时,我如何将表中的每个新元素添加到表的顶部