Не удается связать dblclick с элементом флажка с атрибутом disabled - PullRequest
2 голосов
/ 14 октября 2010

У меня есть флажок:

 <td class="checkbox">
      <input type="checkbox" 
             value="100" 
             id="chkbox_100" 
             name="chkbox[]" 
             class="chkbox_selector" 
             disabled="">
 </td>

У меня есть какой-то jQuery:

 $(':checkbox').each(function(){
      $(this).dblclick(function(e){
           $(this).removeAttr("disabled");
      });
 });

Я предполагаю, что при двойном щелчке по полю отключаетсяатрибут удален НО этого не происходит.

Если я загружаю флажок без деактивации и заменяю $(this).removeAttr("disabled"); на alert('here');, я получаю ожидаемую функциональность.

Если я запускаю naked $(this).removeAttr("disabled");, флажки на странице загружаются без атрибута отключенного (и, как ни странно, также могут выдавать предупреждение "ЗДЕСЬ").

Итак,Что мешает jQuery привязать событие двойного щелчка к отключенному флажку?Есть ли простой способ исправить это?

Ответы [ 2 ]

1 голос
/ 18 ноября 2011

Решение состоит в том, чтобы поместить input в <span> и связать событие с <span>.

1 голос
/ 14 октября 2010

Ничто не мешает jQuery связать событие.Тот факт, что он отключен, приводит к тому, что обработчик событий не запускается.

Если вы назначите обработчик, а затем удалите атрибут disabled, обработчик все еще будет работать.

 $(':checkbox').dblclick(function(e){
     alert('here');
 });

 $(':checkbox').removeAttr("disabled");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...