Успех Ajax, как обновлять ответ каждую минуту - PullRequest
0 голосов
/ 24 сентября 2010

Меня действительно смущают эти несколько строк кода, которые, на мой взгляд, должны работать.Div обновляется при использовании .html, но не при использовании пользовательского сценария.

У меня есть несколько файлов, index.php и test.php

index содержит:

$(document).ready(function () {
    setInterval(function () {
        $(function () {
            $.ajax({
                url: 'test.php',
                dataType: 'json',
                cache: false,
                success: function (data) {
                    // custom script that displays parsed info goes here, doesn't work
                    $("#div").html(data); // works and updates
                }
            });
        });
    }, 10000);
});

test.php содержит строку json.

index.php отображает и обновляет проанализированную информацию в div просто отлично, однако скрипт, использующий данные, заполненные json, не обновляется.

Любая помощь будет принята с благодарностью.

Спасибо

Ответы [ 2 ]

0 голосов
/ 24 сентября 2010

Используя setInterval, вызывает функцию через регулярные промежутки времени, ваша функция может выполняться или не выполняться полностью, когда вы вызываете функцию с помощью setTimeout, существует вероятность выполнения кода (полностью). Ну, на ваш вопрос, я пишу самозаполняющуюся анонимную функцию с именем функции request, и я буду вызывать ее после каждого 10000 milli seconds

$(function () {
    (function request() {
        $.ajax({
            url: 'test.php',
            dataType: 'json',
            cache: false,
            success: function (data) {
                $("#selector").html(data); // works and updates
            }
        });
         //calling the anonymous function after 10000 milli seconds
        setTimeout(request, 10000);  second
    })(); //self Executing anonymous function
});

Просто попробуй =)

0 голосов
/ 24 сентября 2010

Сначала убедитесь, что запрос успешно завершен. Сначала проверьте, что синтаксис вашего селектора соответствует разметке. '#div' ищет любой элемент с id = "div". Если это правильно, убедитесь, что запрос обрабатывается. Попробуйте добавить предупреждение или отладочный оператор в функцию успеха. Если у вас нет всплывающего окна, используйте сетевой монитор Firefox или Chrome, чтобы увидеть, что происходит, когда сделан запрос.

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