簡體   English   中英

使用AJAX腳本從XML檢索標題和說明

[英]Retrieving title and despcription from XML using AJAX script

我正在嘗試使用AJAX從XML文件中提取標題和描述元素,但出現了一些問題。 我已經能夠獲得每個標題元素,但無法獲得它們附帶的描述元素。 我嘗試在另一個for循環中使用ChildNode,但無法正常工作。 你知道我怎么能工作嗎? 謝謝!

這是我的僅檢索標題的代碼:

<div id="result"></div>

<script type="text/javascript">

    function ajaxRequest(){
        var activexmodes=["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"] 
        if (window.ActiveXObject){ 
            for (var i=0; i<activexmodes.length; i++){
                try{
                    return new ActiveXObject(activexmodes[i])
                }
                catch(e){
                }
            }
        }
        <!-- else if (window.XMLHttpRequest) -->
        return new XMLHttpRequest()
        <!-- else -->
        return false
        }

    var mygetrequest = new ajaxRequest()
    if (mygetrequest.overrideMimeType)
        mygetrequest.overrideMimeType('text/xml')
    mygetrequest.onreadystatechange=function(){
        if (mygetrequest.readyState==4){
            if (mygetrequest.status==200 || window.location.href.indexOf("http")==-1){
                var xmldata=mygetrequest.responseXML 
                var rssentries=xmldata.getElementsByTagName("item")
                var output='<ul>'
                for (var i=0; i<rssentries.length; i++){
                    output+='<li>'
                    output+='<a href="'+rssentries[i].getElementsByTagName('link')                    [0].firstChild.nodeValue+'">'
                    output+=rssentries[i].getElementsByTagName('title')    [0].firstChild.nodeValue+'</a>'
                    output+='</li>'
                }
                output+='</ul>'
                document.getElementById("result").innerHTML=output
            }
            else{
                alert("Error")
            }
        }
    }
    mygetrequest.open("GET", "testfile.xml", true) 
    mygetrequest.send(null)

</script>

如果selectSingleNode()可用,並且assuimg您想在<item>節點下獲得<description> <item>節點,則嘗試這樣的操作:

var description = rssentries[i].selectSingleNode('.//description');

所發布的問題不是很清楚。 發布示例XML並指出您確實難以獲取的哪個節點應該能夠清除問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM