Jquery中的Not-disabled只读复选框?

时间:2011-09-15 07:11:26

标签: jquery

我有一个带有表单的页面。我想让页面上的所有复选框和单选按钮都是只读的(不可编辑的),而不会使它们具有“禁用”外观。我只是想阻止用户轻松更改复选框的值。如何才能做到这一点?

3 个答案:

答案 0 :(得分:8)

这可能是最干净的方法:

var deactivator = function(event){ event.preventDefault(); };

$(':radio, :checkbox').click(deactivator);

重新启用它们:

$(':radio, :checkbox').unbind('click',deactivator);

答案 1 :(得分:4)

您可以在点击事件处理程序中为所有复选框和单选按钮使用preventDefault

$(":checkbox, :radio").click(function(e) {
    e.preventDefault();
});

这是working example

答案 2 :(得分:0)

如果您的要求只是启用或禁用与特定复选框交互的功能,同时不防止发布元素,则另一个解决方案是:

if (interaction === true){
   $('#elID').click(false);
} else {
   $('#elID').unbind('click');
}