2016-05-26 3 views
0
<div class="list" data-id="1">One</div> 
<div class="list" data-id="2">Two</div> 
<div class="list" data-id="3">Three</div> 
<div class="list" data-id="4">Four</div> 

var text = $(".list").contents().filter(function() { 
return this.nodeType == 3; }).text() 
alert(text); 

から分裂してtextNodeを取得し、私は "OneTwoThreeFour"のdivタグ今

しかし、私が取得したいし、アラートを取得します..using "|"分裂

私を助けてください.......

答えて

3

使用.join()jQuery.map()

join()方法は、文字列に配列のすべての要素を結合します。

配列またはオブジェクト内のすべての項目を項目の新しい配列に変換します。

var text = $(".list").map(function() { 
 
    return this.textContent; 
 
}).get(); 
 

 
alert(text.join('|'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<div class="list" data-id="1">One</div> 
 
<div class="list" data-id="2">Two</div> 
 
<div class="list" data-id="3">Three</div> 
 
<div class="list" data-id="4">Four</div>

それとも

var text = $(".list").contents().filter(function() { 
 
    return this.nodeType == 3; 
 
}).get(); 
 
text = text.map(function(t) { //.map as text is a collection of `TextNode` objects 
 
    return t.textContent; 
 
}); 
 
alert(text.join('|'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<div class="list" data-id="1">One</div> 
 
<div class="list" data-id="2">Two</div> 
 
<div class="list" data-id="3">Three</div> 
 
<div class="list" data-id="4">Four</div>

+0

あなたのアプローチを使用していただきありがとうございます!私は問題を解決しました〜:> – Heejoo