Gdy kliknięty jest link, chcę coś dołączyć na stronie. Jednak link korzysta z PHP

(Uwaga: To jest wewnątrz echa):

<a id = 'linkimg1' href='main.php?img1=$img1_id'> [img1 here] </a>

Mam

<script>
    $(document).ready(function() {
        $('#linkimg1').click(function() {
            $('stuff').appendTo('body')
        });
    });
</script>

Jak zrobić link nadal wykonać skrypt jQuery?

0
frosty 3 grudzień 2013, 10:30

3 odpowiedzi

Najlepsza odpowiedź

Musisz dodać selektor jako parametru. Jeśli nie, zdarzenie jest związane bezpośrednio, co nie działa dla treści dynamicznych.

<script>
$(document).ready(function() {
$(document.body).on('click', '#linkimg1' ,function(){
  $('stuff').appendTo('body')
 });
});
</script>

Selektor jest niezbędną częścią funkcji .on ()

.on(eventType, selector, function)

Dokumentacja API jQuery Oto

0
Xanfar 3 grudzień 2013, 06:53

Podczas korzystania z obsługi imprez do dynamicznych treści, użyj jQuery.on () lub jQuery.live () (przestarzałe)

0
chepe263 3 grudzień 2013, 06:37

Przypisz to jako funkcję Onclick

<a id = 'linkimg1' href='main.php?img1=$img1_id' onclick="myFunction()"> [img1 here] </a>


<script>
    $(document).ready(function() {
        function myFunction() {
            $('#linkimg1').click(function() {
                $('stuff').appendTo('body')
            });
        } 
    });
</script>
0
Kevin Lynch 3 grudzień 2013, 06:58