我尝试做的是当我点击一个克隆到' b'标签
这是html:
<ol>
<li>y</li>
<li>z</li>
<li>x</li>
</ol><b></b>
这是javascript:
$("li").click(function(){$(this).clone().appendTo("b");});
我得到了一个要点,因为有&#39; li&#39;我希望克隆的文本周围的元素。我如何在克隆后删除它们或者只是克隆文本,因为这似乎是一种更好的做法?
以下是jfiddle上的链接: https://jsfiddle.net/m1yvLr86/
点击这个&#39;列表上的项目,它返回子弹点但我只想要文本!
答案 0 :(得分:0)
首先获取b
元素文字,附加li
文字并添加覆盖b
文字:
$('li').click(function () {
$('b').html($('b').html() + '<br>' + $(this).html());
});
以下是一个实例: jsFiddle
当然,你可以使用空格或新行或其他代替<br>
答案 1 :(得分:0)
$("li").click(function(){
text = '';
var oldtext = $('b').text();
var newtext = $(this).text();
text = oldtext + newtext;
$('b').text(text);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ol>
<li>y</li>
<li>z</li>
<li>x</li>
</ol><b></b>
答案 2 :(得分:0)
您可以使用text函数检索li元素的内容而不使用其标记:
$("li").click(function(){
var text=$(this).text();
// Do something with text (e.g. alert(text);
});
在我的示例中,text变量存储单击的元素文本内容:https://jsfiddle.net/ss3301qf/9/
答案 3 :(得分:0)
如评论中所述,请参阅下面的代码我已评论过 - 为了清晰起见应用了一些CSS
$("li").click(function() { /* capture the click */
$("b").append( /* target element */
$(this).text() /* get li text() */
)
});
li { cursor: pointer; }
b { padding: 12px; border: 1px solid #ccc; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ol>
<li>y</li>
<li>z</li>
<li>x</li>
</ol><b></b>