jQuery.find(”img“).attr(”src“)不返回图像源
我使用以下jQuery获取xml提要的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
和
,用于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")
})
}