如何在不使用 .get() 或 .load() 的情况下将 ajax 数据加载到 DIV?

Posted

技术标签:

【中文标题】如何在不使用 .get() 或 .load() 的情况下将 ajax 数据加载到 DIV?【英文标题】:How to load ajax data into DIV without using .get() or .load()? 【发布时间】:2015-03-15 09:47:01 【问题描述】:

合作公司向我提供了一个 URL,用于将内容加载到 DIV 中。我们将以下内容放在页面上:

<div id="catalog"></div>

然后使用.get() 将内容放入其中。由于我们在一些较旧的站点上使用 jQuery 1.3.2,并且工程部门不会很快更新它,因此出现了一个问题。 .get().load() 都给我错误。

我尝试了以下方法:

 $(document).ready(function () 
         $.ajax("http://appserv.ourpartneringcompany.com/catalog/?acct=12345",function(data)
            $('#catalog').html(data);
         );
);

错误消失,但数据未加载。我可以用jQuery.ajax()吗?

【问题讨论】:

见api.jquery.com/load,api.jquery.com/jquery.get,api.jquery.com/jQuery.Ajax 如果你把“html()”改成“text()”,这样行吗?数据中有什么东西回来了吗? .load() 方法是在 jquery 1.0 版上添加的,因此它应该在您的 jquery 1.3.2 上可用。 .get().load() 出现什么错误 @JorgeF 错误是“无法加载 XMLHttpRequest。Access-Control-Allow-Headers 不允许请求标头字段 X-Requested-With。” 我不是专家,但我认为那是因为您正试图从另一台服务器获取一些数据。也许这个答案会帮助你更好地理解:***.com/questions/3595515/… 【参考方案1】:

我认为 jQuery 1.3.2 不支持这种语法。

尝试修改为:

$.ajax(
  url: "http://....",
  type: "GET",
  success: function(data)
    $('#catalog').html(data);
  
);

【讨论】:

这在测试页面上有效,但在我们的网站上无效。我在 Chrome 控制台中收到此错误:“无法加载 XMLHttpRequest。Access-Control-Allow-Headers 不允许请求标头字段 X-Requested-With。” 那是另一个问题,我相信与服务器相关。请参阅此帖子以了解潜在的修复***.com/questions/12409600/…

以上是关于如何在不使用 .get() 或 .load() 的情况下将 ajax 数据加载到 DIV?的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate中Session的load()和get()方法如何使用,举列子说明

如何在不创建或附加 Azure Java SDK 的情况下获取 AppendBlobItem

数组适配器中的 get count() 如何在不显式返回数组大小的情况下返回值?

休眠:session.get 和 session.load 之间的区别

如何在不区分大小写的情况下执行 model.objects.get(**kwargs)

如何在不返回 Promise 的情况下从对象的`get()` 获取异步数据