看起来以前有人问过这个问题,但答案似乎对我不起作用。我正在从一个本地XML文件输出信息,但是描述元素没有被输出,因为它包含在CDATA中-如果我删除CDATA部分,那么一切正常。
下面是我的代码:
$(document).ready(
function() {
$.get('test.xml',
function($info) {
objInfo = $($info);
objInfo.find('item').slice(0,5).each(
function() {
var Guid = $(this).find('guid').text();
var Title = $(this).find('title').text();
var Description = $(this).find('description').text();
$('#Content').append(
"<p><a href='" + Guid + "'>" +
Title + "</a> " +
Description +
"</p>"
)
}
);
},
'xml'
);
}
)您知道如何成功提取包装在CDATA中的描述信息吗?
谢谢-
乔治
发布于 2010-06-17 04:21:42
我刚刚花了几个小时做一些非常类似的事情,对我有用的是在发送/接收端显式地将内容类型设置为"text/xml“和"xml”。也就是说,
服务器端:
...
response.setContentType("text/xml");
...客户端/ jQuery端:
...
$.ajax({
type: 'POST',
url: 'myAjaxHandler',
processData: false,
data: message,
contentType: 'text/xml',
dataType: 'xml',
success: function(xml, textStatus) {
var myVar= $(xml).find('interestingNode').text();
$('#someId').append(myVar);
},
error: function(xhr, textStatus, errorThrown) {
...
}
});
...不确定两者是否都是必需的。
在文档中,如果您没有指定内容类型,jQuery将尝试“猜测”您发送的内容,在我的示例中,我将HTML嵌入到CDATA中。
https://stackoverflow.com/questions/2553808
复制相似问题