jQuery解析HTML存储在变量中吗?

我正在使用PHP和ajax命令获取外部网页的整个HTML内容(通过PHP file_get_contents()命令)并将该HTML传递给javascript变量。 一旦我将页面的HTML内容存储在变量中,我可以使用jQuery与该变量的内容进行交互,就像jQuery通常与DOM交互一样吗? 在此示例中,我尝试搜索具有特定ID属性的某些HTML元素(

标记)的存在。 任何人都可以建议我如何做到这一点?

如果我理解正确,你应该能够将变量传递给jQuery函数并相应地工作。

.filter()一个简单示例:

 $(myHtml).filter('#someid').doStuff(); 

只需将其作为字符串传递给jQuery构造函数即可。

 var foo = jQuery('

asdtest

'). alert(foo.find('i').text());

您甚至可以使用本机JS来执行此操作。 在这种情况下,使用innerHTML属性将新HTML添加到隐藏div中,如下所示:

 document.getElementById('hidden_div_id').innerHTML = myHTML; 

添加新HTML后,您可以使用所需的任何方法遍历节点。

只需将它注入隐藏的div并在那里操纵你需要的东西。

 var myHTML;//variable with html from php var $hiddenDIV = $('
').hide().appendTo('body').html(myHTML); /*Now you can traverse the contents of $hiddenDIV. * If you need to get the contents back: */ var newHTML = $hiddenDIV.html();

是。 即使没有它,你也可以创建一个不可见的div,然后在那里解析它。