Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery:从变量中查找HEAD标记内的元素_Javascript_Jquery - Fatal编程技术网

Javascript Jquery:从变量中查找HEAD标记内的元素

Javascript Jquery:从变量中查找HEAD标记内的元素,javascript,jquery,Javascript,Jquery,想知道如何使用Jquery在变量“x”的HEAD标记中找到“link”元素吗 已尝试,但下面的代码不起作用 var x = "<html><head> <link> I'm inside head tag </link> </head></html>"; var y = $('<div>' + x + '</div>'); y.find('head')[0].html(); alert(y);

想知道如何使用Jquery在变量“x”的HEAD标记中找到“link”元素吗

已尝试,但下面的代码不起作用

var x = "<html><head> <link> I'm inside head tag </link> </head></html>";

var y = $('<div>' + x + '</div>');

y.find('head')[0].html();

alert(y);
var x=“我在头标签内”;
变量y=$(''+x+'');
y、 查找('head')[0].html();
警报(y);
获取属性,因为索引
0
返回DOM对象或直接对jQuery对象应用方法

虽然您不能直接解析包含标记的HTML字符串(这将避免这些元素,因为它不能是div元素的子元素),但是您需要将其视为XML。要解析XML,使用的结果将是一个节点数组,现在只需使用jQuery包装即可将其转换为jQuery对象,然后执行其余操作

var x=“我在头标签内”;
//将字符串解析为XML并生成XML文档
//并使用jQuery包装以从中生成jQuery对象
变量y=$($.parseXML(x));
//通过索引获取DOM对象并获取html内容
var a=y.find('head')[0].innerHTML;
//或者使用jQuery方法获取内容
var b=y.find('head').html();
控制台日志(a,b)
获取属性,因为索引
0
返回DOM对象或直接对jQuery对象应用方法

虽然您不能直接解析包含标记的HTML字符串(这将避免这些元素,因为它不能是div元素的子元素),但是您需要将其视为XML。要解析XML,使用的结果将是一个节点数组,现在只需使用jQuery包装即可将其转换为jQuery对象,然后执行其余操作

var x=“我在头标签内”;
//将字符串解析为XML并生成XML文档
//并使用jQuery包装以从中生成jQuery对象
变量y=$($.parseXML(x));
//通过索引获取DOM对象并获取html内容
var a=y.find('head')[0].innerHTML;
//或者使用jQuery方法获取内容
var b=y.find('head').html();
控制台日志(a,b)

如果需要从文档标题中查找链接,可以使用此选择器

$('head link')
但是,如果需要从变量中查找标头中的链接元素,可以这样做

var x = "<html><head> <link> I'm inside head tag </link> </head></html>";
$(x).filter( function (i,a){ return $(a).is('link');});
var x=“我在头标签内”;
$(x).filter(函数(i,a){return$(a).is('link');});

如果需要从文档标题中查找链接,可以使用此选择器

$('head link')
但是,如果需要从变量中查找标头中的链接元素,可以这样做

var x = "<html><head> <link> I'm inside head tag </link> </head></html>";
$(x).filter( function (i,a){ return $(a).is('link');});
var x=“我在头标签内”;
$(x).filter(函数(i,a){return$(a).is('link');});

为什么要将html放在div中?实际上,我想在HEAD标记中找到LINK元素,替换内部内容并返回整个html。我相信jQuery正在剥离
标记。使用jQuery 2.2.1版,
的innerHTML是
“我在头标签里面”
。为什么要把html放在一个div里面?实际上,我想找到头标签里面的LINK元素,替换内部内容并返回整个html。我相信jQuery是在剥离
标签。使用jQuery 2.2.1版,
的innerHTML是
“我在头标签里面”