在Javascript中获取多个值变量的连接字符串

时间:2015-06-03 20:02:28

标签: javascript jquery concatenation

我有一个div列表

<div data-attr="sel" data-num="1"></div>
<div data-attr="notSel" data-num="2"></div>
<div data-attr="sel" data-num="3"></div>

我尝试使用data-attr =&#34; sel&#34;来获取仅字符串div。集。

function SI_MoveTasks() {
    var getSelected = document.querySelector('[data-attr~="sel"]');
    var selectedNums = getSelected.dataset.num;
    alert(selectedNums);
}

现在我得到(1),我怎么能得到连接字符串(1,3)? 感谢您的支持。

2 个答案:

答案 0 :(得分:4)

DEMO - &gt; http://jsfiddle.net/0d54ethw/

使用let sharedDefaults = NSUserDefaults(suiteName: "group.applewatchtest") let sharedArray = sharedDefaults?.arrayForKey("Shared") watchLabel.setText(arrayBook.randomData()) 代替querySelectorAll,因为后者只选择第一个元素而不是所有元素。

然后使用for循环,如下所示

querySelector

答案 1 :(得分:1)

您需要使用document.querySelectorAll来获取所有匹配的元素。 document.querySelector仅返回第一个匹配元素,如果没有,则返回null。

function SI_MoveTasks() {
    var getSelected = document.querySelectorAll('[data-attr~="sel"]');
    console.log(getSelected);
    var selectedNums = '(';
    for(var i=0; i< getSelected.length; i++) {
        if (selectedNums !== '(') {
          selectedNums += ',';
        }
      selectedNums += getSelected[i].dataset.num;
    }
    selectedNums += ')';
    alert(selectedNums);
}
SI_MoveTasks();

这是一个有效的代码,jsFiddle是:https://jsfiddle.net/3kjye452/