Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: AJAX w bloku załadowanym przez AJAX
Forum PHP.pl > Forum > XML, AJAX
Lashlo
Witam wszystkich smile.gif
Mam taki problem do którego rozwiązania nie potrafię znaleźć.
Otóż mam sobie taką stronkę w której menu to linki ajaksowe (jquery) po kliknięciu na jakiś link treść bloku 'tresc_wlasciwa' zmianie się ładnie.
Ale w tym bloku 'tresc_wlasciwa' też chcę mieć linik a ajaksie, lecz one mi nie działają :/

Kawałek konu strony głównej:
Kod
<div id="menu">
        <script type="text/javascript">
            $(document).ready(function(){
                   $('#b').click(function(){
                    $('#tresc_wlasciwa').load('tresc/kontakt.html');
                });
                   $('#c').click(function(){
                    $('#tresc_wlasciwa').load('tresc/mapa.php');
                });
                   $('#d').click(function(){
                    $('#tresc_wlasciwa').load('tresc/aktualnosci.html');
                });
                $('#e').click(function(){
                    $('#tresc_wlasciwa').load('tresc/wakacje.php');
                });
                $('#f').click(function(){
                    $('#tresc_wlasciwa').load('tresc/strefa.php');
                });
                $('#g').click(function(){
                    $('#tresc_wlasciwa').load('tresc/dodaj.php');
                });
                $('#dodaj').click(function(){
                    $('#tresc_wlasciwa').load('tresc/dodaj.php');
                });
                $('#moje').click(function(){
                    $('#tresc_wlasciwa').load('skrypty/mojepokoje.php');
                });
                $('#dane').click(function(){
                    $('#tresc_wlasciwa').load('skrypty/mojedane.php');
                });
                $('#rejestracja').click(function(){
                    $('#tresc_wlasciwa').load('tresc/rejestracja.html');
                });
                $('#rej').click(function(){
                    $('#tresc_wlasciwa').load('tresc/rejestracja.html');
                });
                $('#banery').click(function(){
                    $('#tresc_wlasciwa').load('tresc/banery.php');
                });

            });</script>

        <a href="index.php" id="a">Strona główna</a> |
        <a href="#" id="b">Kontakt</a> |
        <a href="#" id="c">Mapa strony</a> |
        <a href="#" id="d">Aktualności</a> |
        <a href="#" id="e">Gdzie na wakacje</a> |
        <a href="#" id="f">Strefa Klienta</a> |
        <a href="forum/" target="_blink">Forum</a>


I treści aktualności.html:

Kod
Terefere
<h3>coś tam<a href="#" id="rej">rejestracja</a></h3>


Linki w menu działają zaś ten w pliku aktualnosci.html nie.
erix
A nie możesz dawać linka w atrybucie href i dać po prostu klasę dla linków...? Strasznie dużo powtarzanego kodu - zechcesz dodać i znowu będziesz musiał dopisywać w dwóch miejscach naraz.

Cytat
Ale w tym bloku 'tresc_wlasciwa' też chcę mieć linik a ajaksie, lecz one mi nie działają :/

Dokumentacja: metoda live.
Lashlo
Oki, znalazłem to: http://docs.jquery.com/Events/live
Ale nie wiem jak tego użyć. W przykładach jest coś takiego:
Kod
    $("p").live("click", function(){
      $(this).after("<p>Another paragraph!</p>");
    });


Przerobiłem to na:
Kod
               $('rej').live("click", function(){
                     $(this).after("<p>Another paragraph!</p>");
                })


I wkleiłem do głównej strony, niestety napis "<p>Another paragraph!</p>" po kliknięciu na odnośiek 'rejestracja' nigdzie się nie pojawił :/
erix
Może najpierw poczytaj o selektorach. tongue.gif
Lashlo
Yyyy. przyznam się ze nie rozumiem java-scriptu dlamnie to taki... śmieciowy język, i nie wiem za bardzo o co w nim chodzi tongue.gif
Ale jeśli zamiast tego 'rej' wstawię tam "a" to czy nie będzie on się tyczył wszystkich odnośników?

Edit:

dałem zamist 'rej' - '#rej' teraz wszystko śmiga biggrin.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.