嘿,我的代码在 IE 上遇到问题。基本上它不会删除 IE 上的选项。它在 Chrome 上运行良好。
function removeYrEndAndPettyCashCat() {
for (var i = 0; i < catsToRemove.length; i++) {
$('option[value = "' + String(catsToRemove[i].ID) + '"]').remove();
}
}
我检查了这个网站上的一些帖子,他们说 .remove 应该可以工作,而且它在控制台中也可以工作。但是,当我尝试在第一次出现下拉列表时单击下拉列表时删除它,该选项仍然存在。如果我关闭下拉菜单并再次打开它,该选项现在就消失了。这种情况只发生在 IE 中。有没有人遇到过这个问题,如果有的话你能建议解决办法吗?
最佳答案
- 您使用的是哪种 IE 浏览器
- 您确定在文档准备就绪时或在填充/创建选择时执行代码吗?
我刚刚制作了一个示例,它似乎可以在 IE11 中运行。
$(document).ready(function(){
$('select[name="test"] option').each(function(){
if($(this).val() === "remove"){
$(this).remove();
}
});
});
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
</head>
<body>
<select id='test' name="test">
<option value="remove">Remove1</option>
<option value="remove">Remove2</option>
<option value="keep">Remove3</option>
<option value="remove">Remove4</option>
<option value="keep">Remove5</option>
<option value="keep">Remove6</option>
<option value="remove">Remove7</option>
<option value="remove">Remove8</option>
<option value="remove">Remove9</option>
</select>
</body>
</html>
关于javascript - jquery 中未删除的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42370671/