以下代码返回除IE之外的所有主流浏览器中data
变量中包含的所选元素的html。
$("#blapp", data).html();
有谁知道为什么?
解决方法是将data
插入DOM,选择所需数据,然后删除临时内容。我想知道是否有人知道更好的解决方案?
答案 0 :(得分:0)
我有一种直觉,data
是一个完整的HTML文档。如果是这样,当您尝试从中创建jQuery对象时,浏览器之间会得到不同的结果。
如果是这种情况,请尝试这样做:
$('<div>' + data + '</div>').find( '#blapp' ).html();
另一个选择是尝试使用.filter()
而不是.find()
(您现在通过context参数执行此操作)。虽然这可能会导致它在某些浏览器中停止工作。
$(data).filter('#blapp').html();