我正在尝试了解如何查看 AJAX 请求是否返回错误。
用于测试请求总是返回 <p id="error">test</p>
我以为你可以这样做:
//html is the var which contains the result
var DOM = $(html);
if( $('#error', DOM ).length != 0 ) {
alert(html);
}
但这行不通。任何人都可以指出出了什么问题吗?
最佳答案
如果您的 HTML 没有被包裹在某些东西中(比如 div
),那么它就需要被包裹起来。
var html = '<div></div><p id="error">ERROR!</p><span>other stuff</span>';
var DOM= $('<div>' + html + '</div>');
if( $('#error', DOM).length != 0 ) {
alert(html);
}
示例:http://jsfiddle.net/jonathon/exqTD/
(我认为 wrap
在这里会有帮助,但事实并非如此。如果有人知道为什么请指出)。
或者,选择器上下文使用 find 实现,所以你可以这样做:
if( DOM.find('#error').length != 0 ) {
alert(html);
}
关于javascript - jquery - 查找元素是否在变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4624090/