GET-запрос в AJAX-восстановленном HTML - PullRequest
0 голосов
/ 14 марта 2010

Существует некоторый HTML-код, который появляется на странице в результате запроса / ответа AJAX. Этот HTML содержит GET-запросы к другому php-скрипту. Ссылки, содержащие эти запросы, не работают, в то время как «настоящий» HTML (добавленный на страницу вручную) работает нормально.

Когда я открываю исходный код страницы с помощью Ctrl + U, я вижу пустые div-ы (но у них фактически есть HTML, извлеченный через AJAX) и полноценный HTML-код, добавленный вручную. Не могу понять, как я могу заставить работать полученные AJAX ссылки.

Вот так я пытаюсь сформировать HTML-код, который должен быть добавлен на страницу в результате ответа AJAX.

<?php

//some selections from the database...
//all subsequent varibles are the members of $row = mysql_fetch_array($query) array;

$html_to_be_inactive = 
    '<li id="productID_' . $productID . '">
        <a href=work.php?action=deleteFromBasket&productID=' . $productID . ' onClick="return false;">
        <img src="images/delete.png" id="deleteProductID_' . $productID     . '">
        </a> ' . $productName . '(' . $totalItems . ' items) - $' . ($totalItems * $productPrice) . '</li>';

 echo $html_to_be_inactive;
?>

И это все, результат 'echo' появляется на странице после успешного AJAX-запроса в виде простого HTML, и он ничего не делает, когда я нажимаю на ссылку.

Я не выполняю методы "добавления" DOM, так как я еще не знаком с DOM. Я вижу все элементы, упомянутые в $ thml_to_be_inactive, но ссылка кажется действительно неактивной. Также этот HTML отсутствует в выводе «Ctrl + U», я вижу его только тогда, когда выбираю «Проверять элемент» в браузере.

HTML-код, который был добавлен вручную, обрабатывает те же элементы, что и обычно, но мне нужно, чтобы AJAX-извлеченный HTML-код также работал.

Я подозреваю, что мне нужно выполнить какой-нибудь метод 'добавления' через JavaScript или jQuery, но я не знаю, как это сделать правильно.

Спасибо.

Ответы [ 2 ]

1 голос
/ 17 июля 2010
  1. Вам нужно поставить href в кавычки.
  2. onClick="return false;" переопределит действие по умолчанию (перейти к href) вашей ссылки. Вам нужно привязать другое событие к ссылке или просто удалить `return false '.
0 голосов
/ 14 марта 2010

Ваши ссылки используют относительные пути.

Вы, вероятно, вставляете HTML на страницу в другом каталоге, ломая относительные пути.

Если это так, вам нужно переключиться на абсолютные пути.

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