gpt4 book ai didi

javascript - jQuery .parents([selector]) 不适用于 IE9 和 Firefox

转载 作者:行者123 更新时间:2023-11-30 07:41:58 25 4
gpt4 key购买 nike

<html>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="application/javascript">

$(document).ready(function() {
$("#evaluation_complete").parents("table")[0].remove(); //doesn't work

//this works
//var EvalComplete = document.getElementById("evaluation_complete");
//EvalComplete.parentNode.parentNode.parentNode.parentNode.parentNode.removeChild(
//EvalComplete.parentNode.parentNode.parentNode.parentNode);
});

</script>
<p>Testing little code</p>
<table>
<tbody>
<tr>
<td class="button-left">&nbsp;</td>
<td class="button-middle" nowrap="true"><div
style="margin: 0px 0px 1px;">
<a class="button-text" name="evaluation_complete"
id="evaluation_complete" href="#">Evaluation Complete</a>
</div></td>
<td class="button-right">&nbsp;</td>
</tr>
</tbody>
</table>
</body>
</html>

我无法控制表格的设置方式。但是我所知道的只是链接的ID。我的目标是遍历到 <table>元素并将其从 DOM 中删除。我也试过 closest .我在 Firefox 和 IE9 中得到的错误是 remove不是函数。注释掉的 block 有效但不是很动态。但是,在 Chrome 中,它可以完美运行。感谢您的帮助。

最佳答案

当您尝试在 native JS 元素而不是 jQuery 元素上使用 .remove() 时,它不起作用:

这不是:

$("#evaluation_complete").parents("table")[0].remove();

但是

$("#evaluation_complete").parents("table").eq(0).remove();

$("#evaluation_complete").parents("table").first().remove();

等等

使用 [0]get(0) 从类似数组的 jQuery 对象中获取原生 JS 元素,它没有 .remove () 方法。

作为旁注,使用 closest() 会更有效,并且适用于上述示例。

关于javascript - jQuery .parents([selector]) 不适用于 IE9 和 Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15210525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com