我想创建一个表示容器每个元素名称的字符串,每个名称用逗号分隔。我提出了以下jQuery函数:
each()
我想知道在不使用{{1}}函数的情况下是否会有更有效/干净的方式收集属性?
答案 0 :(得分:3)
您可以使用.map()
method获取数组,然后使用逗号连接项目:
var list = $('.element').children().map(function () {
return $(this).data("item-name");
}).get().join(',');
基本示例:
var list = $('.element').children().map(function () {
return $(this).data("item-name");
}).get().join(',');
document.body.textContent = list;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="element">
<div data-item-name="name1"></div>
<div data-item-name="name2"></div>
<div data-item-name="name3"></div>
<div data-item-name="name4"></div>
</div>