开发者

Problems using jQuery AJAX to parse XML

I'm not a very experience programmer and have been learning HTML/CSS/JS on the fly. I've been trying to parse XML using jQuery AJAX methods with absolutely no luck.

Here is my code in use: http://jsfiddle.net/Kb5qj/1/

And here is my code in plain sight:

$(document).ready(function() {
var divid = "#xmlcontent"

function parseXML(xml) {
    $(divid).empty();
    $(xml).find("CD").each(function() {
        var artist = $(this).find("ARTIST").text();
        var title = $(this).find("TITLE").text();
        $(divid).append("<li>" + artist + " - " + title + "</li>");
    });
}

function printError() {
    $(divid).html("An error occurred");
}

$.ajax({
    type: "GET",
    url: "www.w3schools.com/ajax/cd_catalog.xm开发者_StackOverflow社区l",
    dataType: "xml",
    success: parseXML,
    error: printError
});
});

I don't know what the problem could be. I have written and re-written and copy/pasted that $.ajax call many many times, but no matter what I do nothing ever happens. Help me please?


like I mentioned it will fail on jsfiddle as they dnt actually send the get request. here is the api on how to achieve the same: http://doc.jsfiddle.net/use/echo.html

If you try the same on your local system it will fail probably cos you are making a cross domain request and your browser natively blocks such requests. That is where jsonp comes it to play its to retrieve json data over cross domains..

You can hack it a little to do the same for js.. here is a SO post about the same: Is there an existing tool for jsonp like fetching of xml in jquery?


With a little bit of fudging, everything in the parsing seems to work fine. Check out this JSFiddle.

You can't use get requests from JSFiddle, but I mocked up the XML into HTML. You may want to try placing your XML document into the DOM to help suss your issue.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜