我正在开发一个html页面,根据用户的需要动态创建文本列表。我需要让那些li可以选择,以便它们也可以被删除......我该怎么做? 我尝试使用委托功能,但它没有用 这是如何生成li的代码......
$('#post_btn').click(function() {
// body...
var note = $('#textArea').val();
$('<li>').text(note).prependTo('.notes');
$('#textArea').val('');
$('#post_btn').addClass('disabled');
});
答案 0 :(得分:3)
点击li
元素切换课程并移除包含该课程的li
。
$('#post_btn').click(function() {
var note = $('#textArea').val();
$('<li>').text(note).prependTo('.notes');
$('#textArea').val('');
$('#post_btn').addClass('disabled');
});
// toggle select class while clicking on the li
$('.notes').on('click', 'li', function() {
$(this).toggleClass('select');
});
// remove the li which have class select
$('#delete').click(function() {
$('.notes li.select').remove();
});
&#13;
.select {
border: 1px solid red;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul class="notes"></ul>
<textarea id="textArea"></textarea>
<button id="post_btn">Add</button>
<button id="delete">Delete</button>
&#13;
答案 1 :(得分:0)
我认为您没有发布足够的源代码来回答这个问题。但如果是这样的话:
https://jsfiddle.net/7xarmzbt/
.btn.btn_apply {
...
}
然后
<ul id='ul'>
</ul>
<button onclick='al();'>
Add li
</button>
<script>
var total=-1;
function al()
{
total++;
document.getElementById('ul').innerHTML+="<li id='li"+total+"' onclick='deleteli("+total+");'>Li #"+total+"</li>";
}
function deleteli(total_2)
{
document.getElementById('li'+total_2).remove();
}
</script>
会为你效劳。在li的生成中,只需添加一个将为每个li更改的id(就像我的'total'var,这实际上不是'li'的总数,而是添加的总数的更多)。对于到达li,有一个删除函数,其中包含id,就像我的一样。如果我认为错了,请评论我的答案以获得更多帮助
JQUERY CODE EQUIVALENT
document.getElementById('ELEMENT_ID').remove();
与
相同document.getElementById('ELEMENT_ID').remove();
在jquery中。