1

以下のVBコードをJavascriptに書き直そうとしています-

sub UpdateDisplay()     
    on Error resume next
    Dim objXMLDoc
    Set objXMLDoc = CreateObject("MSXML2.DOMDocument")
    objXMLDoc.async = false
    objXMLDoc.load("<%=StatsURL%>")

    If (objXMLDoc.xml ="") Then 
       'alert("error")
    Else
        document.body.innerHTML=objXMLDoc.xml   

    End If
end sub

sub StartTimer()
    setInterval "UpdateDisplay",5000
end sub

以下を思いつきましたが、何らかの理由で何も表示されません...

function updateDisplay(){
    var objDom = new XMLDoc();
    objDom.async = false;
    objDom.loadXML("<%=StatsURL%>");

    if (objDom.xml == ""){
        alert(e);
    } else{
        document.body.innerHTML = objDom.xml;
    }           
}

function startTimer(){
    var myVar=setInterval(function(){updateDisplay()},5000);
}

そして、これは呼び出されています -

<body onload="Javascript:startTimer();">

「StatsURL」は別のコードからの変数であることに注意してください。

オンラインで見たところ、 http://msdn.microsoft.com/en-us/library/windows/desktop/ms764708(v=vs.85).aspxを見つけましたが、Javascript で XML DOM Doc をインスタンス化する別の方法を示しています。

XMLDoc() へのインスタンス化と `var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0"); のインスタンス化の違いは何ですか? 私が書いたコードが機能しなかった理由を理解しようとしているだけです。

どんな建設的な支援も素晴らしいでしょう - ありがとう! :)

4

0 に答える 0