【问题标题】:How to send a variable from ajax success to a template?如何将变量从 ajax 成功发送到模板?
【发布时间】:2012-01-05 00:47:30
【问题描述】:

是否可以在不刷新(静默)的情况下重新加载页面? Here 是自动重新加载页面的示例。但是您可以很容易地看到页面在一定时间间隔后刷新。我不喜欢最终用户获得这种体验的地方。我希望页面重新加载但不刷新。最终用户不应该觉得该页面令人耳目一新。是否可以使用简单的html?还是 jquery?

我不想要 jquery 的 <META HTTP-EQUIV="refresh" CONTENT="5">setTimeout,因为它会在重新加载时刷新页面?

【问题讨论】:

    标签: javascript jquery html ajax


    【解决方案1】:

    不要重新加载整个页面。只需使用 ajax 重新加载需要更新的组件即可。 jQuery 非常适合。

    【讨论】:

      【解决方案2】:

      在 ajax 请求中使用 setInterval。我会在 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.
      

      应该做的伎俩。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-29
        • 1970-01-01
        • 2012-12-30
        • 1970-01-01
        • 2018-01-05
        • 1970-01-01
        相关资源
        最近更新 更多