在“禁用”属性设置后,输入仍然响应鼠标事件

时间:2012-01-11 12:28:49

标签: javascript jquery button

问题:我正在尝试使用下面的代码禁用单选按钮。这总是使单选按钮变暗,但它仍然响应鼠标事件(在Opera中,按钮实际上是用刻度标记选中的,但刻度线是暗灰色的。)

$('input:radio[name=admission1][value=1]').attr("disabled", true);
$('#radioAMethod').buttonset("refresh");
...
$(function(){
   $('#admissionCheckBox1').click(function(){
      ...still executed when button dimmed... why?
   });
});

我也试过

$('input:radio[name=admission1][value=1]').prop("disabled", true);
$('input:radio[name=admission1][value=1]').attr("disabled", "disabled");

但没有区别。 如何禁用按钮上的鼠标操作?感谢。

修改

一些html:

<div id="radioAMethod" class="ui-widget-content ui-corner-all effect">
   <h4 class="ui-widget-header ui-corner-all">Admission method</h4>
   <input type ="radio" 
          name ="admission1" 
          id   ="admissionCheckBox0"
          value="0" 
          checked="checked"/>M1<br/>
   <input type ="radio" 
          name ="admission1" 
          id   ="admissionCheckBox1"
          value="1"/>M2<br/>
   <input type ="radio" 
          name ="admission1" 
          id   ="admissionCheckBox2"
          value="other"/>M3<br/>

上面显示的点击功能中的代码在没有禁用按钮时被正确触发,并被点击。感谢。

编辑2

应该说,但只是刚刚意识到 - 这段代码使用http://widowmaker.kiev.ua/checkbox/中的按钮。如果代码应该有效,那么我猜问题实际上是在他的JS某处。

1 个答案:

答案 0 :(得分:1)

我认为你做错了什么

在此示例中:http://jsfiddle.net/VVP5G/您将看到禁用输入未触发点击事件的工作情况。

你确定ID对应于无线电输入吗?