Невозможно вызвать пользовательскую функцию JS после возврата содержимого AJAX - PullRequest
3 голосов
/ 07 декабря 2010

У меня проблема с вызовом пользовательской функции JS после выполнения вызова AJAX.По сути, я создал пару радио-кнопок на главной html-странице.Когда пользователь нажимает одну из переключателей, он запускает вызов AJAX и возвращает другой html-файл с содержимым «div», которое я установил на главной html-странице.Другой html-файл содержит пользовательскую JS-функцию (например, «updateContent ()»), которая использует обработчик события onclick для вызова функции.Когда я запускаю приложение и нажимаю на кнопку.Я видел, что firebug жаловался на ошибку «updateContent () не определен».Сама функция работает нормально и должна быть определена правильно.Пожалуйста, помогите мне об этом!Спасибо.

Ответы [ 2 ]

2 голосов
/ 07 декабря 2010

Волшебные слова Google здесь - это JSON-P и шаблон On Demand Javascript .По сути, вместо загрузки чанка, вы создаете и загружаете тег.Затем javascript интерпретируется, ваша функция определена, гвоздь найден, лошадь обута, а королевство не потеряно.

1 голос
/ 07 декабря 2010

Это потому, что код js, который вы вставляете через innerHTML, никогда не будет выполнен.Возможно, вам придется извлечь его из HTML-кода и запустить его через eval.PrototypeJS имеет опцию конфигурации , чтобы сделать это автоматически.

Я бы порекомендовал вам выделить код js и включить его вместе с остальным кодом js.

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