【发布时间】:2013-03-06 01:18:35
【问题描述】:
当我尝试将append() $.get() 的 XHTML 结果转换为容器元素时,
$.get("my-webservice", function(data){
$("#some-container").append(data);
});
我收到一个错误:
TypeError: 'null' is not an object (evaluating 'e.ownerDocument')
我也试过了:
$("#some-container").append($(data));
并得到同样的错误。 load() 工作正常,所以我知道网络服务正在返回良好的数据:
$("#some-container").load("my-webservice");
在 web 服务端,如果我在返回 $.get() 之前将 XHTML 编码为字符串,则一切正常。 append() 文档说它接受字符串、DOM 元素或 jQuery 对象——我怀疑我弄错了。有什么建议吗?
网络服务只是返回一些简单的引导 XHTML:
<div class="row">
<div class="span5">Div stuff</div>
<div class="span4">More div stuff</div>
</div>
【问题讨论】:
-
你能发布你的html吗?
-
console.log(data)- 你确定它是 DOM 而不是包含你需要引用的嵌套属性的对象吗? -
@AlienWebguy 是的,试过了,在日志中看起来不错。
-
@wst,好像文档类型不匹配,你可以试试
$("#some-container").append($($.parseXML(data)));吗? -
@FrédéricHamidi 使用
parseXML我没有收到错误,但也没有附加数据。
标签: jquery ajax web-services append