Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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中的字符串获取所有锚点_Javascript_Jquery_Html - Fatal编程技术网

Javascript 从jQuery中的字符串获取所有锚点

Javascript 从jQuery中的字符串获取所有锚点,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试创建一个数组,其中包含字符串中的所有锚链接。例如,如果我有一个如下所示的字符串 <a href="http://google.it>Google</a> <a href="http://google.com>Google 2</a> 但是,只显示一个链接(可能是字符串中的第一个链接)。我知道我可能需要遍历字符串中的所有锚点,但如何才能做到这一点?attr()只返回第一个匹配项,您必须将属性映射回 var arr =

我正在尝试创建一个数组,其中包含字符串中的所有锚链接。例如,如果我有一个如下所示的字符串

<a href="http://google.it>Google</a>
<a href="http://google.com>Google 2</a>
但是,只显示一个链接(可能是字符串中的第一个链接)。我知道我可能需要遍历字符串中的所有锚点,但如何才能做到这一点?

attr()
只返回第一个匹配项,您必须将属性映射回

var arr = $('<div />', {html:html}).find('a').map(function() {
    return $(this).attr('href');
}).get()

var str = arr.join(','); // if you need a string 
var arr=$('',{html:html}).find('a').map(函数(){
返回$(this.attr('href');
}).get()
var str=arr.join(',');//如果你需要一根绳子
.attr()
将仅返回第一个元素属性。尝试迭代所有元素并将属性存储在数组中:

var-links=[];
$('body')。查找('a')。每个(函数(){
links.push($(this.attr('href'));
})
控制台日志(链接)

My我问
'
的作用是什么?@wiredmark-它是一个父容器,以防您的元素不是其他元素的后代,因为
find
只查找后代。
var arr = $('<div />', {html:html}).find('a').map(function() {
    return $(this).attr('href');
}).get()

var str = arr.join(','); // if you need a string