Как исправить обновление страницы JavaScript - PullRequest
0 голосов
/ 03 января 2012

Я пытаюсь использовать jQuery для обновления страницы.С метаобновлением, если страница не загружается один раз, она не загружается снова.Я пытаюсь сделать что-то, что будет неоднократно пытаться загрузить - если он не загружается один раз, он попытается снова в следующий раз, чтобы, если последняя загрузка прошла успешно, я увидел свежую версию страницы, независимо от того, есть либыли промежуточные ошибки.

Мой код в настоящее время:

<script language="JavaScript" type="text/javascript" src="/include/jquery.js">
</script>
<script language="JavaScript">
    var delay=5*1000;
    function load(){
        setTimeout(load, delay);
        jQuery("#content").load("calendar_internal.cgi?days=40", function(){
            jQuery("#preload").hide("slow");
        });
        delay = 15*60*1000;
    }
    jQuery("#content").load("calendar_internal.cgi?days=40", load);
</script>

Насколько я могу судить, это функционирует как замыкание.Он не обновляется.

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

- РЕДАКТИРОВАТЬ -

Что у меня сейчас, видимо, работает (после легкого тестирования):

<script language="JavaScript">
var placeholder = jQuery('<div></div>');
function load(){
    setTimeout(load, 15*60*1000);
    placeholder.load("logistic_ajax.cgi", function(){
        if (placeholder.html()) 
            jQuery('#content').html(placeholder.html());
    })
}
load();
</script>

1 Ответ

1 голос
/ 03 января 2012
var $placeHolder = $('<div />');
$placeHolder.load(yourURL,function() {
    if ($placeHolder.html()) {
        $("#content").html($placeHolder.html());
    }
});

или что-то в этом роде. Таким образом, вы не делаете все или ничего типа вещей. Если что-то не так с возвратом HTML, вы можете проверить свое условие «если». Не уверен в деталях ответа, поэтому вам нужно будет уточнить это самостоятельно или сообщить мне более подробно.

Приветствие.

...