尝试使用从返回的数据中查找具有的div元素。不幸的是,没有回来。id="result"``.ajax()``.find()``alert(result)``div#result
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元素。
[object Object]
find("#result")
find
尝试获取该对象的属性,例如result.attr("id")-应该返回result。
result.attr("id")
result
通常,此答案取决于是否#result为顶层元素。
#result
如果#result是顶级元素,
<!-- #result as top level element --> <div id="result"> <span>Text</span> </div> <div id="other-top-level-element"></div>
find()不管用。而是使用filter():
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');