Jquery 如果选择选项未禁用,则删除类
努力实现这一目标:Jquery 如果选择选项未禁用,则删除类,jquery,Jquery,努力实现这一目标: var selectedOption = $("select option"); if(selectedOption.is(":disabled")){ $('#opacity').addClass('opacity'); } else if(selectedOption.is(":enabled")){ console.log("not"); // looking to removeClass('opacity'); } 我的HTML <select
var selectedOption = $("select option");
if(selectedOption.is(":disabled")){
$('#opacity').addClass('opacity');
} else if(selectedOption.is(":enabled")){
console.log("not"); // looking to removeClass('opacity');
}
我的HTML
<select name="url" id="listUpdate">
<option selected="" disabled="" value="">Choose</option>
<option value="http://www.ulr1.ee">ulr1</option>
<option value="http://www.url2.ee">ulr1</option>
<option value="www.url3.ee">ulr1</option>
</select>
类不透明性得到了很好的添加,尽管当选项从:disabled选项更改为:enabled时,我无法使用:enabled将其删除。有什么建议吗?您需要做一个简单的更改:
var selectedOption = $("select option:selected");
或者使用以下命令:
} else if (!selectedOption.is(":disabled")) {
最后,确保将此函数绑定到select的.change事件,而不仅仅是文档的ready函数:
$(function () {
$(select).change(function () {
if(selectedOption.is(":disabled")){
$('#opacity').addClass('opacity');
} else if(selectedOption.is(":enabled")){
console.log("not"); // looking to removeClass('opacity');
}
});
});
正如我看到的注释一样,您可以使用.toggleClass方法,将类名作为第一个参数传递,将第二个参数作为条件检查传递: $'select'。在'change'上,函数{ $'opacity'.toggleClass'opacity',$:选中,此.is':禁用'; }.改变; 钮扣{ 背景:蓝色; 颜色:白色; } .opacity{opacity:0.2;} 选择 ulr1 ulr1 ulr1
很幸运,你不能开始工作了。你能贴把小提琴吗?我试过了,但当我更改选择时仍然没有更改。选择应替换为正确的选择。抱歉,输入错误的选择。非常感谢!更适合我的需要,更干净。谢谢