在HTML字符串中查找元素
我想我有
var testHTML = "";
我希望得到高于div作为JQuery对象来操纵它。 我尝试找到它:
var found = $(testHTML).find("#demo_div");
与:
var found = $(testHTML).find("div");
两个都没有运气。 我有空的找到的变量。 我做错了什么?
PS是的我知道我可以直接访问我的div
$("#demo_div")
但我不能在我的情况下这样做 – 我需要从普通的HTML中获取它,这将被分配给一些变量,就像我在testHTML var中的例子一样 。
更新:即使我没有像这里的root div元素:
var testHTML = "";
我不能使用find来导航div元素。
问题是你的div
是集合中的根元素,所以你需要使用.filter()
而不是.find()
(只查看后代元素):
var found = $(testHTML).filter("#demo_div");
我假设您的实际HTML字符串比问题中的字符串更复杂,否则您不需要执行除$(testHTML)
以外的任何$(testHTML)
并且您将拥有包含该单个元素的jQuery对象。
你可以使用javascript本身的.search()
函数。
testHTML.search('demo_div')>-1