我有一个用Javascript编写的while循环,用于清除ul的任何li项目(如果存在)(ul由其他函数填充):
<ul id="schedule"></ul>
const list = document.getElementById("schedule");
function clearList() {
while (list.firstChild) {
list.removeChild(list.firstChild);
}
};
这是完美的工作,但是我尝试了几种不同的方法来使用jQuery重构函数,并且每次尝试都导致页面无响应。这是我尝试过的最新内容:
const $list = $("#schedule");
const $listChild = $("#schedule li");
function clearList() {
while ($listChild) {
$list.empty();
}
};
非常感谢任何指向类似问题的帮助或指针!
答案 0 :(得分:0)
jQuery已经具有此功能。无需修改您现有的函数,相反,我只需要修改调用您现有的函数clearList()的代码即可。我会做类似的事情:
$('ul#schedule').empty(); //Empty the entire list
您还可以执行以下操作:
$('ul#schedule li:empty').remove(); //Remove empty <li></li> elements
$('ul#schedule').last(); //Get last child <li> and do whatever you want with it...