jQuery 追加获取 XHTML 结果失败

标签 jquery ajax web-services append

当我尝试将 $.get() 的 XHTML 结果 append() 到容器元素时,

$.get("my-webservice", function(data){
    $("#some-container").append(data);
  });

我收到错误:

TypeError: 'null' is not an object (evaluating 'e.ownerDocument')

我也尝试过:

$("#some-container").append($(data));

并得到相同的错误。 load() 工作正常,所以我知道 Web 服务正在返回良好的数据:

$("#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>

最佳答案

当您使用 $.get 函数而不指定 dataType 时,jQuery 会尝试对返回的文档类型做出最佳猜测。作为 $.get 函数的最后一个参数,尝试添加“html”来指定 dataType。请参阅jQuery documentation了解更多信息。

$.get("my-webservice", function(data){
    $("#some-container").append(data);
}, 'html');

关于jQuery 追加获取 XHTML 结果失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15464374/

相关文章:

javascript - 将图标与 p 标签对齐

javascript - 如何在 jquery 变量上显示警报消息?

tfs - 如何从 TFS 获取项目列表?

php - Symfony 4 Form - Ajax 选择人口

javascript - jQuery、ajax、在其他页面内显示页面(如 iframe)

Java Socket Server——重定向到Web应用程序(Web服务)

javascript - 如何将 JSON 序列化对象转换为 JS 对象,以便可以访问其属性?

javascript - 为什么jQuery会滑下来破坏我在Chrome中的嵌入式YouTube播放器?

javascript - 一键切换两个容器

java - 如何使用Ajax进行jquery表单提交?