Javascript 如何附加任何特定的标记?
例如,我有这样一个列表标题:Javascript 如何附加任何特定的标记?,javascript,jquery,html,Javascript,Jquery,Html,例如,我有这样一个列表标题:title。这里是我希望点击一个按钮就可以“附加到”的地方: 这是按钮: 以下是函数: Button=function() { $('#playlist').append('#example'); } 我只是不明白为什么它不起作用,我的意思是当我制作.append('title')-所以纯文本-它会将该文本添加到标记中,但当我尝试通过ID附加整个标记时,它不起作用?相反,它附加了“#示例”,这不是我想要的。很抱歉,我仍在努力掌握这门语言,但是,我已经诚实地搜索并
title
。这里是我希望点击一个按钮就可以“附加到”的地方:
这是按钮:
以下是函数:
Button=function() {
$('#playlist').append('#example');
}
我只是不明白为什么它不起作用,我的意思是当我制作.append('title')-所以纯文本-它会将该文本添加到标记中,但当我尝试通过ID附加整个标记时,它不起作用?相反,它附加了“#示例”,这不是我想要的。很抱歉,我仍在努力掌握这门语言,但是,我已经诚实地搜索并搜索了整个互联网,试图找到一个与此相关的答案。试试这个:
$('#playlist').append($('#example'));
更新:
您可以使用clone()
方法,尝试以下操作:
$('#example').clone().attr('id', 'something').appendTo($('#playlist'))
您需要附加整个li,因此您的解决方案是:
function Button() {
var $li = '<li id="example"> title </li>';
$('$playlist').append($li);
}
功能按钮(){
var$li='title ;
$('$playlist')。追加($li);
}
(内容[,内容])
内容:要插入的DOM元素、HTML字符串或jQuery对象
匹配元素集中每个元素的结尾
jQuery假设您是在按字面意思追加HTML字符串#example
。使用其他两个选项之一,例如:
$('#playlist').append($('#example')); // append a jQuery object
为了完整起见:
$('#playlist').append(document.getElementById('example')); // append a DOM element
这是页面中的
li
,还是脚本生成的?如果是后者,它就是找不到它,因为它不在DOM中!啊,这太完美了,非常感谢。但是,当你在这里的时候,有没有一种快速的方法让它不移动,而是复制它呢?抱歉,我不想打扰您或其他任何事情。@user1:请记住重复的id
s会导致无效的HTML。还有,是你的朋友。@user1是的,正如David Thomas正确地说的那样,你可以使用clone
方法。哦,好的,我会调查的。谢谢你的帮助,这个网站仍然让我惊讶于它是多么的频繁和有用,我真的非常感谢它。