Как отправить переменную из ajax success в шаблон? - PullRequest
1 голос
/ 20 февраля 2011

Возможно ли перезагрузить страницу без обновления (без вывода сообщений)? Здесь - пример автоматической перезагрузки страницы.Но вы можете легко увидеть, что страница обновляется через определенный промежуток времени.Мне не нравится, когда конечный пользователь получает такой опыт.Я хочу, чтобы страница перезагрузилась, но без обновления.Конечный пользователь не должен чувствовать, что страница обновляется.Возможно ли использовать простой HTML?или jquery?

Я не хочу <META HTTP-EQUIV="refresh" CONTENT="5"> или setTimeout jquery, потому что он обновляет страницу при перезагрузке?

Ответы [ 3 ]

1 голос
/ 20 февраля 2011

Вы должны выполнять запросы Ajax через заданные интервалы. Эта тема обсуждается здесь: Как периодически запускать AJAX-запрос?

0 голосов
/ 20 февраля 2011

Используйте setInterval с запросом ajax. Я обновлю через 1 минуту со скриптом.

var divid = 'yourDivsId'

function createRequestObject() 
{
  var obj;
  var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
    obj = new ActiveXObject("Microsoft.XMLHTTP");
  }else{
    obj = new XMLHttpRequest();
  }
  return obj;
}

function sendReq(req) 
{   
  http.open('get', req);
  http.onreadystatechange = handleResponse;
  http.send(null);
}

function handleResponse() 
{   
  if (http.readyState == 4)
  {
    var response = http.responseText;
    document.getElementById(divid).innerHTML=response;
  }
}


var http = createRequestObject();
setInterval('yourUrl', 30000); //or whatever time you want.

Должен сделать свое дело.

0 голосов
/ 20 февраля 2011

Не перезагружайте всю страницу.Просто используйте ajax для перезагрузки компонентов, которые необходимо обновить.JQuery идеально подходит для этого.

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