当前位置: 首页 > 面试题库 >

对来自.ajax()调用的数据的jQuery .find()返回“ [object Object]”而不是div

邴俊友
2023-03-14
问题内容

尝试使用从返回的数据中查找具有的div元素。不幸的是,没有回来。id="result"``.ajax()``.find()``alert(result)``div#result

这是我的代码:

$.ajax({
    url: url, 
    cache: false,
    success: function(response) {
        result = $(response).find("#result");
        alert(response); // works as expected (returns all html)
        alert(result); // returns [object Object]
    }
});

问题答案:

要具体回答您的问题,它似乎工作正常。您说它返回[object Object],这是jQuery随find("#result")方法返回的结果。它返回与find查询匹配的jQuery元素。

尝试获取该对象的属性,例如result.attr("id")-应该返回result

通常,此答案取决于是否#result为顶层元素。

如果#result是顶级元素,

<!-- #result as top level element -->
<div id="result">
  <span>Text</span>
</div>
<div id="other-top-level-element"></div>

find()不管用。而是使用filter()

var $result = $(response).filter('#result');

如果#result不是顶级元素,

<!-- #result not as top level element -->
<div>
  <div id="result">
    <span>Text</span>
  </div>
</div>

find() 将工作:

var $result = $(response).find('#result');


 类似资料:
  • 问题内容: 这个问题已经在这里有了答案 : 如何从异步调用返回响应? (39个答案) 7年前关闭。 我想创建一个JavaScript函数,该函数返回jQuery AJAX调用的值。我想要这样的东西。 我知道我可以通过将async设置为false来做到这一点,但我宁愿不这样做。 问题答案: 使用jQuery 1.5,您可以使用全新的功能,正是为此目的而设计的。 资源

  • 我检测到来自Firebug的响应标头: 响应标头 连接保持活动 内容长度11 内容类型文本/html 日期周一,2012年11月5日18:57:46 GMT 保持活动时间=5,max=99 服务器端/2.2.22(Unix)MOD_SSL/2.2.22 OpenSSL/0.9.8R DAV/2 PHP/5.4.4 X-Pad避免浏览器错误 X-Powered-由PHP/5.4.4 但是没有响应文本

  • 问题内容: 我有一个发出AJAX调用的功能(通过jQuery)。在本节中,我有一个函数说: 但是,如果我这样称呼它: 第一个永远不会被调用。 如果将an 放入函数中,则为true,但在该函数返回之前不会为true 。 可以将回调函数传递给我的方法吗?喜欢: 问题答案: 是一个 回调 函数。它将由Ajax对象调用-异步!-操作完成时。您无法捕捉回调的结果,只有Ajax对象可以做到这一点。 您的函数-

  • 嗨,我刚刚按照Ryan Bates的指南从服务器加载数据,因为客户端与可数据交互。 http://railscasts.com/episodes/340-datatables?view=asciicast 在他的产品数据类中,他定义了一个排序函数: 基本上,列名用于查询数据库,因此“名称”、“类别”等都是产品模型的属性。因此,将生成一个SQL SELECT语句,其名称或类别用于对ASC或DESC进

  • 问题内容: 我试图通过传递一些参数的AJAX调用MVC控制器动作。 我有时 在此应用程序中执行此操作 ,并且效果很好。 我不知道为什么只有 这一个 无效。 这是我的控制器方法: 提醒一下,我正在做我在其他Ajax调用中所做的事情,但是特别是 只有这一条 不起作用。 有人有什么主意吗? 问题答案: 始终使用或html helper方法来构建操作方法的url。无论您当前的页面/路径如何,它都会正确构建

  • 问题内容: 我希望此函数返回ajax调用是否成功。有什么办法可以做到吗?我下面的代码无法做到这一点。 问题答案: 不幸的是,您不能将值返回给包装异步回调的函数。取而代之的是,您从AJAX请求进行的成功回调会将数据和控制权移交给另一个函数。我在下面演示了这个概念: myFunction的定义: 回调函数定义: 调用myFunction: