JQuery替换html元素内容我正在寻找移动或复制HTML元素的内容。这已经被问及之前,我可以得到innerHTML()或JQuery的html()方法工作,但我试图自动化它。如果ID以前缀
如果元素的ID以'rep_'开头,则在下划线后替换该元素的内容。
所以,
<div id="rep_target">
Hello World.
</div>
将取代:
<div id="target">
Hrm it doesn't seem to work..
</div>
我已经试过:
$(document).ready(function() {
$('[id^="rep_"]').html(function() {
$(this).replaceAll($(this).replace('rep_', ''));
});
});
- 和 -
$(document).ready(function() {
$('[id^="rep_"]').each(function() {
$(this).replace('rep_', '').html($(this));
});
});
似乎都没有工作,但是,这并不工作,只能手动:
var target = document.getElementById('rep_target').innerHTML;
document.getElementById('target').innerHTML = target;
相关,但是这仅仅是文字。 JQuery replace all text for element containing string in id
哪里更换从何而来?你想转移 - 替换(转移现有的内容来替换目标)?或克隆替换(复制现有内容并替换目标)? – Joseph 2012-04-24 00:10:06
一般评论:你在你的例子中使用html错误:html将一个字符串,而不是一个函数,作为参数。同样,你正在使用替换不正确;如果你想改变属性(任何属性,包括“id”),你应该使用attr。我认为后者的困惑来自误解$(foo)返回的内容:它不是元素的ID,也不是元素本身(或元素)。相反,它是一个围绕元素的包装器,类似于[element1,element2,...],但带有数组通常不具有的额外方法。希望有所帮助。 – machineghost 2012-04-24 00:22:04
我是JS noob。我需要从id =“rep_target1”中获取格式化的HTML内容,并替换或附加id =“target1”的内容。基本上,搜索所有具有id =“rep_X”的元素,然后查找并替换id =“X”,页面上有多个实例具有不同的X值...... – 2012-04-24 22:43:26