我必须做这样的事情:
我有 html 列表:
<ul>
<li><a href="abc"></a></li>
<li><a href="bac"></a></li>
<li><a href="cab"></a></li>
</ul>
我想在一个变量中包含所有链接并用逗号分隔它们 - 生成变量字符串“abc, bac, cab。”
我可以显示这些链接:
var link = $ ('ul li a') .attr ('href');
alert (link);
但我不能做一个循环,例如:对于每个“li”,复制链接,然后显示:“link1,link2,link3”
最佳答案
使用map()
jQuery 中的 方法,有助于根据元素生成数组。稍后使用 Array#join
连接值方法。
var link = $('ul li a')
.map(function() { // iterate over and generate array
return $(this).attr('href') // retrive href attribute value
})
.get() // retrieve the result as array from jQuery object
.join(', '); // join the value for prefered output
alert(link);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>
<a href="abc"></a>
</li>
<li>
<a href="bac"></a>
</li>
<li>
<a href="cab"></a>
</li>
</ul>
关于jquery - 将所有链接复制到一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37967759/