我已经下载了li中的选项。我想动态删除具有特定ID的li。结构如下所示
<ul class="es-list" style="top: 305.483px; left: 191.25px; width: 194px; display: block;">
<li id="from_7" class="" value="7" style="display: block;">Adelaide</li>
<li id="from_1" class="" value="1" style="display: block;">Alexandria</li>
<li id="from_17" class="" value="17" style="display: block;">Antwerp</li>
<li id="from_19" value="19" style="display: block;">Aqaba</li>
我试过
$('#from_7').remove();
但它没有删除li
答案 0 :(得分:4)
我相信您可以通过JS / jQuery动态添加<li>
元素。如果是这种情况,请将您的行更改为
$('body #from_7').remove();
还要确保页面中包含jQuery插件。
这种行为的原因是,无论何时在页面上动态添加项目(例如,通过JS在页面加载时存在的空<li>
中添加<ul>
项),选择器必须是:
$('<name of any parent which existed when page loaded> <actual element selector, in your case is ID of element>');
我将正文添加为 li 的父,因为它总是在加载页面时存在的父作品。
稍后编辑:
尝试在添加元素后,在document.ready()和 ONLY 中添加此命令。在添加元素之前不要执行它,因为什么都不会发生。
$(document).ready(function(){
// code that adds `<li>`
// other code...
// remove your targeted LI element only when you press on any LI, and ONLY after its been added to the list
$('body ul.es-list').on('click','li', function(){
$('body ul.#from_7').remove();
})
});
答案 1 :(得分:4)
您必须检查浏览器控制台是否有错误,我认为您缺少代码中的jQuery库文件。
<table>
@for (int i = 0; i < Model.Array.GetLength(0); i++)
{
<tr>
@for(int j=0;j<Model.Array.GetLength(1);j++)
{
<td>
@Model.Array[i, j]
</td>
}
</tr>
}
</table>
&#13;
$(document).ready(function(){
$('#from_7').remove();
});
&#13;
答案 2 :(得分:3)
尝试
var elem = document.getElementById('id');
elem.parentNode.removeChild(elem);