jQuery.find(”img“).attr(”src“)不返回图像源

jQuery.find(”img“).attr(”src“)不返回图像源,jquery,ajax,find,Jquery,Ajax,Find,我使用以下jQuery获取xml提要的和,用于var contentimg=$(this).find('content').text().find('img').attr('src'),但是如果我要将变量更改为$(this.find('content').text()),则不会返回任何内容;当我只查找内容的images src atribute值时,返回整个内容 $(文档).ready(函数(){ $.ajax({ 键入:“获取”, url:“http://www.blogger.com/fee

我使用以下jQuery获取xml提要的
,用于
var contentimg=$(this).find('content').text().find('img').attr('src')
,但是如果我要将变量更改为
$(this.find('content').text()),则不会返回任何内容;当我只查找内容的images src atribute值时,返回整个内容

$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“http://www.blogger.com/feeds/2399953/posts/default",
数据类型:“xml”,
成功:xmlParser,
数据类型:“jsonp”
});
});
函数xmlParser(xml){
$(xml).find(“entry”).each(函数(){
var title=$(this.find('title').text();
var contentimg=$(this).find('content').text().find(“img”).attr(“src”);
$(“.entirecont”).append(“
”+title+”
“+contentimg+”


); }); } ​
标记中的内容已编码。您需要
unescape
it:

var contentimg = $(unescape($(this).find('content').text())).find("img").attr("src");

您的代码中有几个错误:

  • 您没有将xml传递给回调函数
  • 您必须首先解析xml(使用$.parseXML)
  • 必须向每个函数传递一个键和一个值参数
  • 下面是一个工作示例(没有来自提要的图像,但这应该是自我解释的)

    $(文档).ready(函数(){
    $.ajax({
    键入:“获取”,
    url:“http://www.blogger.com/feeds/2399953/posts/default",
    数据类型:“xml”,
    成功:函数(xml){
    xmlParser(xml)
    },
    数据类型:“jsonp”
    });
    });
    函数xmlParser(xml){
    parsedxml=$.parseXML(xml)
    xml=$(parsedxml)
    entries=xml.find(“entry”)。每个(函数(键、值){
    title=$(值).find(“title”).text()
    $(“正文”)。附加(标题)
    $(“
    ”).appendTo(“正文”) }) }​
    您有
    数据类型:“xml”
    数据类型:“jsonp”
    。这是您问题中的错误类型吗?如果删除
    数据类型:“jsonp”
    ,您的JSFIDLE将出现以下错误:
    XMLHttpRequest无法加载http://www.blogger.com/feeds/2399953/posts/default. 起源http://fiddle.jshell.net 访问控制允许源站不允许使用。
    var contentimg = $(unescape($(this).find('content').text())).find("img").attr("src");
    
        $(document).ready(function () {
        $.ajax({
            type: "GET",
            url: "http://www.blogger.com/feeds/2399953/posts/default",
            dataType: "xml",
            success: function(xml) {
            xmlParser(xml)
            },
            dataType: 'jsonp'
        });
    });
    
    function xmlParser(xml) { 
        parsedxml = $.parseXML(xml)
    xml = $(parsedxml)
            entries = xml.find("entry").each(function(key, value) {
            title = $(value).find("title").text()
            $("body").append(title)
            $("<br>").appendTo("body")
            })
    }​