0

目前,我当前的页面是一个基于基本服务状态页面的内容将 XML 文件加载到浏览器的页面。我正在尝试让特定的 div 自动刷新,但失败了 - 我不是 JS 专家,因此将不胜感激任何指导

        <script type="text/javascript">               
      if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
          xmlhttp = new XMLHttpRequest();
      }
      else {// code for IE6, IE5
          xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
      xmlhttp.open("GET", "\\tech-desk04\Service Site\servicereport.xml", false);
      xmlhttp.send();
      xmlDoc = xmlhttp.responseXML;

      if (xmlDoc) {
          var x = xmlDoc.getElementsByTagName("ISSUE");
          for (i = 0; i < x.length; i++) {
              document.write("<div class='box_lrg'><div class='box_top'></div><div class='box_middle'><table border='0'>");
              document.write("<tr><td class='title'><h2>");
              document.write(x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue);
              document.write("</h2></td><td class='issueid'><strong>IssueID: </strong><br />");
              document.write(x[i].getElementsByTagName("ISSUEID")[0].childNodes[0].nodeValue);
              document.write("</td><td class='status'><strong>Status: </strong><br />");
              document.write(x[i].getElementsByTagName("STATUSID")[0].childNodes[0].nodeValue);
              document.write("</td></tr>");
              document.write("<tr><td colspan=3 class='description'>");
              document.write(x[i].getElementsByTagName("TICKETDESCRIPTION")[0].childNodes[0].nodeValue);
              document.write("</td></tr>");
              document.write("<tr><td></td><td class='updated'><strong>Last Updated: </strong><br />");
              document.write(x[i].getElementsByTagName("UPDATEDON")[0].childNodes[0].nodeValue);
              document.write("</td><td class='author'><strong>Author: </strong><br />");
              document.write(x[i].getElementsByTagName("AUTHOR")[0].childNodes[0].nodeValue);
              document.write("</td></tr>");
              document.write("</table>");
              document.write("</div><div class='box_bottom''></div></div>");
          }
      }
      else {
          document.write("<h3><span class='blue'>There are no issues at the moment.</span></h3>");
      }

这是一些用于显示 XML 文档的 javascript - 我希望这个 div 自行刷新,我目前正在使用:

                <script type="text/javascript">
      var auto_refresh = setInterval(
        function ()
            {
                $('#refresh').load('Service.html #refresh').fadeIn();
            }, 2000); // refresh every 2000 milliseconds
            </script>

我遇到的问题是该页面最初可以工作,但是在 2000 毫秒之后,整个 div 就会消失而不是重新加载。这是因为内容是在 Javascript 中创建的,还是我在做一些愚蠢的事情?

我是 JS/JQuery 的新手——我引用了最新的 JQuery。但我很难理解为什么这会删除 div。

让我知道任何想法。

4

4 回答 4

1

只需从 Service.html 旁边的脚本中删除额外的#refresh - 这就是它的样子。我测试了它,它正在工作......这是唯一的问题。

var auto_refresh = setInterval(
    function () {
        $('#refresh').load('Service.html').fadeIn();
        }, 2000
);
于 2013-07-23T14:20:07.130 回答
0

我不知道这是否会影响您的 div,但可能是 fadeIn 函数需要两个括号。喜欢$('#refresh').load('Service.html #refresh').fadeIn();

于 2013-05-23T14:05:42.070 回答
0

使用.fadeIn()而不是.fadeIn

于 2013-05-23T14:02:32.807 回答
0

fadeIn是一个函数,你忘了放 () :

$('#refresh').load('Service.html #refresh').fadeIn();
于 2013-05-23T14:01:34.310 回答