我有一个启用或禁用select元素的复选框
实际上我使用这段简单的代码就行了.
$("#filtri").change(function(){
if ($("#menuContinenti").attr("disabled")) {
$("#menuContinenti").removeAttr("disabled");
} else {
$("#menuContinenti").attr("disabled", "disabled");
}
});
Run Code Online (Sandbox Code Playgroud)
这是最好的方式还是有类似.toggle()功能在禁用/启用之间切换?
Exp*_*lls 40
您应该使用.prop禁用:
$("#menuContinenti").prop('disabled', function () {
return ! $(this).prop('disabled');
});
Run Code Online (Sandbox Code Playgroud)
更新:没有意识到当前属性值是函数的参数; 这个版本更干净:
$("#menuContinenti").prop('disabled', function (_, val) { return ! val; });
Run Code Online (Sandbox Code Playgroud)
更新:ES2015
$("#menuContinenti").prop("disabled", (_, val) => !val);
Run Code Online (Sandbox Code Playgroud)
您可以编写自己的插件来执行类似的操作.
在jQuery之后添加这个,最好是在脚本文件中.
(function($) {
$.fn.toggleDisabled = function(){
return this.each(function(){
this.disabled = !this.disabled;
});
};
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
然后像这样使用它:
$('#my-select').toggleDisabled();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27349 次 |
| 最近记录: |