Флажок "Обнаружить" был выбран с помощью JQuery? - PullRequest
2 голосов
/ 11 марта 2010

Что не так с моим кодом. Когда я нажимаю на флажок, ничего не происходит

$(document).ready(function(){
     $('input:checkbox[name=drawingNo]').click(function(){alert('I am here');});            
});  
...
<body>
    <form>
        <input type="checkbox" name="drawingNo" value="1"> 1 <br>
        <input type="checkbox" name="drawingNo" value="2"> 2 <br>
        <input type="checkbox" name="drawingNo" value="3"> 3 <br>
        <input type="checkbox" name="drawingNo" value="4"> 4 <br>
    </form>
</body>

РЕДАКТИРОВАТЬ: выше код работал нормально. Что случилось со мной, так это то, что тег <input type="checkbox"> сгенерирован каким-то другим скриптом, поэтому при запуске document.ready () он не может зарегистрировать событие click для флажка, поскольку этот флажок на самом деле еще не существует. Чтобы исправить это: измените .click() на .live('click', function(){...})

Ответы [ 4 ]

4 голосов
/ 11 марта 2010

Ваш селектор неверный ..

Ниже представлен лучший формат

$(document).ready(function(){
 $("input[name='drawingNo']").live('click', function(){
 alert('I am here');
 });            
});
1 голос
/ 11 марта 2010

Использовать $ .fn.live ...

$('input:checkbox[name=drawingNo]').live('click',function(){
   alert('I am here');
});
1 голос
/ 11 марта 2010

У меня отлично работает в IE, FF и Chrome.

0 голосов
/ 11 марта 2010

попробуйте убрать ': checkbox', чтобы он выглядел так:

$ ('input [name = DrawingNo]'). Click (function () {alert ('I are here');});

лучше?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...