Javascript I';I’我想知道如何在不克隆文本元素的情况下克隆文本
我试图做的是当我点击一个元素时,它会克隆到“b”标签中 以下是html:Javascript I';I’我想知道如何在不克隆文本元素的情况下克隆文本,javascript,jquery,Javascript,Jquery,我试图做的是当我点击一个元素时,它会克隆到“b”标签中 以下是html: <ol> <li>y</li> <li>z</li> <li>x</li> </ol><b></b> 我得到了一个要点,因为我想要克隆的文本周围有“li”元素。既然这似乎是一种更好的做法,我该如何在克隆后摆脱它们,还是只克隆文本 以下是JFIDLE上的链接: 当你点击列表
<ol>
<li>y</li>
<li>z</li>
<li>x</li>
</ol><b></b>
我得到了一个要点,因为我想要克隆的文本周围有“li”元素。既然这似乎是一种更好的做法,我该如何在克隆后摆脱它们,还是只克隆文本
以下是JFIDLE上的链接:
当你点击列表中的“this”项时,它会返回项目符号,但我只想要文本 首先取出
b
元素文本,追加li
文本并添加覆盖b
文本:
$('li').click(function () {
$('b').html($('b').html() + '<br>' + $(this).html());
});
$('li')。单击(函数(){
$('b').html($('b').html()+'
'+$(this.html());
});
下面是一个活生生的例子:
当然,您可以使用空格、新行或其他任何形式来代替
$(“li”)。单击(函数(){
文本='';
var oldtext=$('b').text();
var newtext=$(this.text();
文本=旧文本+新文本;
$('b')。文本(文本);
});代码>
y
z
x
您可以使用文本功能来检索li元素的内容,而不带标记:
$("li").click(function(){
var text=$(this).text();
// Do something with text (e.g. alert(text);
});
在我的示例中,text变量存储单击的元素文本内容:,如注释中所述,请参阅下面我注释的代码-为了清晰起见,应用了一些CSS
$(“li”)。单击(函数(){/*捕获单击*/
$(“b”).append(/*目标元素*/
$(this.text()/*get li text())*/
)
});代码>
li{光标:指针;}
b{padding:12px;border:1px solid#ccc;}
y
z
x
你的意思是这个.textContent
?简单的东西,比如…?您不需要在这样的实例中实际“克隆”文本。$(“li”).click(function(){$(“b”).append($(this.text())})
如前所述,您不需要克隆字符串,只需提取它的一个副本,然后append@DarrenSweeney它是有效的,这也可能是一个解决方案。。。
$("li").click(function(){
var text=$(this).text();
// Do something with text (e.g. alert(text);
});