Как сделать Ajax Call из Div, который был вызван Ajax? - PullRequest
1 голос
/ 26 января 2011

У меня есть страница PHP, подобная этой:

Вот схема: http://img233.imageshack.us/img233/4895/13423274.jpg

В DIV 1 и DIV 2 я сделал Ajax призывы к контенту. Ajax Calls сделаны с главной страницы. Если я хочу позвонить из DIV 1, чтобы изменить DIV 2, это не работает = /
Я пытался:

document.getElementById('div2').innerHTML = data;

Может ли кто-нибудь мне помочь? Thankyou!

Ответы [ 2 ]

0 голосов
/ 26 января 2011

Итак, в контенте DIV1 есть ссылки, которые, например, хотят загрузить контент в DIV2? Затем вам нужно добавить прослушиватели событий в ссылки в DIV1, чтобы при нажатии на них создавались вызовы AJAX, которые загружают контент в DIV2.

Я бы рекомендовал использовать jQuery (http://jquery.com/), и вы можете сделать что-то вроде этого:

// getting the content into DIV1
$( '#div1' ).load( '/path/to/backend.php', function()
{
    // the ajax request is complete, so let's add listeners to the a tags in DIV1
    $( '#div1 a' ).click( function()
    {
        // this clears DIV2's content
        $( '#div2' ).empty();

        // and now we load some ajax by getting the href of the a tag and passing that to our backend
        $( '#div2' ).load( '/path/to/backend.php', { page: $( this ).attr( 'href' ) };
    });
});

Вы можете прочитать больше здесь: http://api.jquery.com/load/

0 голосов
/ 26 января 2011

Идентификатор не может начинаться с цифры, что может привести к проблемам.

Кроме того, это зависит от того, где находится ваш javascript и как и когда вы присоединяете его к обработчику событий.

Если javascript включен в код, который загружен в DIV 1, проблем не должно быть, но если он уже есть на странице, его необходимо присоединить к вновь загруженному DIV 1, как только он Загружен.

См., Например, документацию по функции jQuery .live() для подробного объяснения того, что я имею в виду.

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