Jquery не отвечает за внешнюю загруженную страницу - PullRequest
0 голосов
/ 18 января 2010

Я несколько дней искал решение проблемы, но не могу найти хитрость .. Когда я загружаю внешнюю php-страницу в div и затем нажимаю на ссылку с внешним php-кодом, эта ссылка ничего не делает. Пожалуйста, посмотрите на этот код.

index.php Тест

<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(document).ready(function() {


    $("#loadexternfile").bind("click", function(){
        // some more events
        loadContent();
    });

    $("#test").click(function() {
        alert("Hello world!");
    });

    function loadContent() {
        $.ajax({
            type: "GET",
            url: "external.php",
            cache: false,
            dataType: 'html',

            success: function(html){
                $(".loaddiv").html(html);
            },

            error: function(){
            },

            complete: function(){
            }
        });
    }
});
</script>


</head>
<body>

<a href="#" id="loadexternfile">loadexternfile</a>
<div class="loaddiv"></div>

</body>
</html>

external.php

<a href="#" id="test">test</a>

Есть идеи?

Спасибо

1 Ответ

4 голосов
/ 18 января 2010

То, что вы хотите, - это использовать live() метод jQuery.См. http://api.jquery.com/live/,, который будет:

"Присоединить обработчик к событию для всех элементов, которые соответствуют текущему селектору, сейчас или в будущем."

Так измените:

$("#test").click(function() {
   alert("Hello world!");
});

К:

$("#test").live('click', function() {
   alert("Hello world!");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...