Сгенерированный Javascript не выполняется - PullRequest
0 голосов
/ 18 мая 2009

Я занят написанием простого приложения Adobe Air, использующего HTML, jQuery и некоторый плагин jQuery для загрузки RSS-каналов.

Проблема, с которой я столкнулся, заключается в том, что я генерирую раздел HTML-компонентов (кнопок), чтобы я мог выполнять определенный код по нажатию кнопки. Но когда страница отображается, кнопка никогда не запускается; Я пытался использовать встроенную функцию журнала, а также оповещения, но ни один из них не выполняется. Странная часть - когда я копирую компонент HTML в часть страницы, которая не была сгенерирована, он работает нормально.

Я вставляю следующее в div, используя jQuery, и оно не выполняется.

'<input type="button" onclick="LoadPage()" value="Test" />' 

Если я просто вставлю его в HTML, он будет работать нормально.
Я использую версию 1.3.2 jQuery; Я также использую этот плагин для загрузки данных в div, и я изменил строку 82, чтобы включить компонент html выше.

Следует отметить, что при проверке страницы с помощью интроспектора AIR HTML действителен.

Что может быть не так?

Ответы [ 3 ]

2 голосов
/ 18 мая 2009

Я не вижу проблемы. Следующее работает отлично для меня:

$(document).ready(function() {
  $('#mainDiv').html('<input type="button" onclick="LoadPage()" value="Test" />');
});

function LoadPage()
{
  alert("Hello");
}
0 голосов
/ 18 мая 2009

Есть та же проблема с 'onClick' вместо 'onclick'? Также проверьте, не называется ли функция «Loadpage» вместо «LoadPage».

У меня иногда возникают проблемы с учетом регистра в javascript, но я не уверен, что это функции с учетом регистра.

0 голосов
/ 18 мая 2009

Если вы хотите использовать jquery для обработки клика, вы можете использовать событие live .

У меня тоже была эта проблема некоторое время назад, и это решило проблему.

Если вы дадите своей кнопке идентификатор, он будет выглядеть примерно так:

$("#YourButtonId").live("click", function (){....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...