我有两个用jstl构建的选择列表。一个包含所有可用的人,另一个包含适用的人。我想从所有可用人员列表中删除适用的人员。
$(document).ready(function() {
$("#chosenList").each(function() {
$("option", this).each(function(){
$("#chooseList option[value='"+this+"']").remove();
});
});
});
我认为上述方法可行,但事实并非如此。有人可以指出我的方式错误吗?
答案 0 :(得分:0)
尝试
$(document).ready(function() {
$("#chosenList option").each(function() {
$("#chooseList option[value='"+$(this).val()+"']").remove();
});
});
编辑现在我详细查看了代码片段,我想知道为什么要使用两个嵌套的每个函数。我希望你没有几个ID为#chosenList
的选择...无论如何,我会说现在应该可以了......
答案 1 :(得分:0)
我之前遇到过这种问题。将其更改为:
$(document).ready(function() {
$("#chosenList").each(function() {
$("option", $(this)).each(function(){
$("#chooseList option[value='"+$(this).val()+"']").remove();
});
});
});
请注意$()
周围的this
?那是因为this
是一个'纯'JavaScript对象 - 而不是jQuery对象,因此没有.val()
函数。在它周围放置$()
会将其转换为jQuery对象。