1

我希望如果 'attendance_20121029.xml' 文件被改变,网络浏览器会自动改变。所以我使用了 setinterval 方法。但是如果我更改文件,Web 浏览器不会更改。如果我再次执行 HTML 文件,Web 浏览器就会改变。如果有人有什么好主意,请发表评论。

<html>
  <head>
  </head>
  <body onLoad="tid=setInterval('refresh()',1000);">
    <script language="JavaScript">
    function refresh()
    {
        var xmlDoc=null;
        if (window.ActiveXObject)
        {
            xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
        }
        else if (document.implementation.createDocument)
        {
            xmlDoc=document.implementation.createDocument("","",null);
        }
        else
        {
            alert('fail');
        }

        if (xmlDoc!=null)
        {
            xmlDoc.async=false;
            xmlDoc.load("studentlist.xml");
        }
        var xmlDoc2=null;
        if (window.ActiveXObject)
        {
            xmlDoc2=new ActiveXObject("Microsoft.XMLDOM");
        }
        else if (document.implementation.createDocument)
        {
            xmlDoc2=document.implementation.createDocument("","",null);
        }
        else
        {
            alert('fail');
        }

        if (xmlDoc2!=null)
        {
            xmlDoc2.async=false;
            xmlDoc2.load("attendance_20121029.xml"); 
        }



        document.write("<table border='1' cellspacing='4' cellpadding='4'>");
        document.write("<tr><th>");
        document.write("Student Name");
        document.write("</th>");
        document.write("<th>");
        document.write("Attendece");
        document.write("</th></tr>");
        for (i=0 ; i<xmlDoc.childNodes[1].childNodes.length ; i++)
        {
          document.write("<tr>");
          document.write("<td align='center'>");
          document.write(xmlDoc.childNodes[1].childNodes[i].text);
          document.write("</td>");
          document.write("<td align='center'>");
          for (k=0 ; k<xmlDoc2.childNodes[1].childNodes.length ; k++)
          {
            if(xmlDoc.childNodes[1].childNodes[i].text == xmlDoc2.childNodes[1].childNodes[k].tagName)
            {
                document.write("O");
                break;
            }
          }
          if (k == xmlDoc2.childNodes[1].childNodes.length )
          {
            document.write("X");
          }

          document.write("</td>");
          document.write("</tr>");
        }
        document.write("</table>");
        document.close();
    }

</script>


  </body>
</html>
4

0 回答 0