Заставить Jquery работать на странице, полученной через ajax - PullRequest
0 голосов
/ 16 июля 2011

Итак, я пытаюсь написать что-то вроде jquery на странице (контенте), которое изначально принимается через ajax.Но это не работает.Если я делаю страницу не полученной через ajax, она работает отлично.Однако я хотел, чтобы текущая страница (запрошенная через ajax) работала с поиском jquery, который я делаю.Я поместил этот код на страницу, запрашивающую содержимое ajax, не работает, а затем попытался поместить его в запрошенное содержимое ajax.

Страница, содержащая содержимое ajax, имеет следующее значение:

и предполагается использовать следующую функцию javascript

Спасибо

<script type="text/javascript">

$(document).ready(function() {

    var data = {items: [
            {value: "21", name: "Mick Jagger"},
            {value: "43", name: "Johnny Storm"},
            {value: "46", name: "Richard Hatch"},
            {value: "54", name: "Kelly Slater"},
            {value: "55", name: "Rudy Hamilton"},
            {value: "79", name: "Michael Jordan"}
        ]};
    $("div.search input").autoSuggest(data.items, {selectedItemProp: "name", searchObjProps: "name"});

});
</script>

Ответы [ 2 ]

1 голос
/ 16 июля 2011

Действительно трудно понять, что происходит на вашей странице, не видя больше вашего кода.Может ли быть ваша проблема в том, что вы ожидаете, что $ (document) .ready будет запущен только после загрузки содержимого ajax?Если это так, то вы должны знать, что он запускается после полной загрузки страницы, и запросы AJAX не включены в это - они раздельные.

Если это действительно ваша проблема, вы можете исправитьпереместив все внутри $ (document) .ready в функцию обратного вызова ajax.

0 голосов
/ 16 июля 2011

Как насчет помещения ее в пользовательскую функцию и последующего вызова этой функции после загрузки содержимого?

function stuff() {

    var data = {items: [
            {value: "21", name: "Mick Jagger"},
            {value: "43", name: "Johnny Storm"},
            {value: "46", name: "Richard Hatch"},
            {value: "54", name: "Kelly Slater"},
            {value: "55", name: "Rudy Hamilton"},
            {value: "79", name: "Michael Jordan"}
        ]};

    $("div.search input").autoSuggest(data.items, {selectedItemProp: "name", searchObjProps: "name"});

}

$(function() {
    $('#content').load('something.html', function() {
        stuff();
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...