В какой ситуации событие может потерпеть неудачу? - PullRequest
0 голосов
/ 08 февраля 2012

У меня большой исходный файл, поэтому я не разделяю его здесь, но проблема в том, что я не могу добавить событие click, используя следующий код:

$(document).on('click','#test' + testId , function(e){
            console.log('I was clicked');
        });

Если яиспользуйте этот код в отдельном файле, он работает, но в моем фактическом источнике я не могу отправить событие :( В чем может быть причина?

Ответы [ 3 ]

0 голосов
/ 08 февраля 2012

В чем может быть причина?

  1. Этот #test + testId элемент не существует.
  2. Другой обработчик событий останавливает распространение с помощью e.stopPropagation() или return false;
0 голосов
/ 08 февраля 2012

Я написал код в методе setTimeout, и это решило проблему.Я не ожидал этого, потому что я прикреплял событие к телу, а не к элементу.Элемент на самом деле не существовал во время прикрепления события к телу, поэтому событие не отправлялось.

0 голосов
/ 08 февраля 2012

Ваш документ должен быть загружен или элемент '#test' + testId должен существовать хотя бы.

<body onload="init()">

А вот ваша функция javascript:

function init() 
{
    $(document).on('click','#test' + testId , function(e){
        console.log('I was clicked');
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...