2017-04-17 47 views
0

我有一些文本的div。我需要得到這個div內類似標籤的所有元素的數組。 我將選定的字符串數據存儲在一個變量中並將其轉換爲對象。 我需要在此字符串中使用「sen」標籤獲取所有元素。 我試着用'查找'和'過濾器',但他們都給我不完整的結果。 這裏我要求的數組是所有的'sen'標籤,即從'.h351'級到'.h356'級。具有類似標記/類的對象內部的嵌套元素

這裏是一個小提琴test link得到清晰的想法。檢查控制檯以查看結果。

JS代碼

var htmlSet = '<span xmlns="http://www.w3.org/1999/xhtml" class="reset black2"><sen name="351" class="h h351">Sagen</sen></span><sen xmlns="http://www.w3.org/1999/xhtml" name="352" class="h h352"> Sie bitte nicht, der Schüler verfüge nicht über die nötigen kognitiven Funktionen, um sich das derart verteilte Wissen überhaupt anzueignen.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="353" class="h h353"> Denn ebendiese Funktionen sind es, die sich mit dem Träger und durch den Träger ändern.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="354" class="h h354"> Durch die Schrift und den Buchdruck etwa hatte das Gedächtnis sich so sehr gewandelt, daß Montaigne sagen konnte, er ziehe einen wohlbeschaffenen einem wohlgefüllten Kopf vor.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="355" class="h h355"> Dieser Kopf ist unterdessen noch einmal mutiert.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="356" class="h h356"></sen>'; 
var htmlSetArr = $(htmlSet).find('sen'); 
console.log("array using find"); 
console.log(htmlSetArr); 
var htmlSetArr1 = $(htmlSet).filter('sen'); 
console.log("array using filter"); 
console.log(htmlSetArr1); 

回答

0

我能夠通過這種方式排序。 將內容包裹在另一個div內,'find'工作正常。

這裏是更新小提琴link

JS代碼

var htmlSet = '<span xmlns="http://www.w3.org/1999/xhtml" class="reset black2"><sen name="351" class="h h351">Sagen</sen></span><sen xmlns="http://www.w3.org/1999/xhtml" name="352" class="h h352"> Sie bitte nicht, der Schüler verfüge nicht über die nötigen kognitiven Funktionen, um sich das derart verteilte Wissen überhaupt anzueignen.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="353" class="h h353"> Denn ebendiese Funktionen sind es, die sich mit dem Träger und durch den Träger ändern.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="354" class="h h354"> Durch die Schrift und den Buchdruck etwa hatte das Gedächtnis sich so sehr gewandelt, daß Montaigne sagen konnte, er ziehe einen wohlbeschaffenen einem wohlgefüllten Kopf vor.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="355" class="h h355"> Dieser Kopf ist unterdessen noch einmal mutiert.</sen><sen xmlns="http://www.w3.org/1999/xhtml" name="356" class="h h356"></sen>'; 
htmlSet = '<div>'+htmlSet+'</div>'; 
var htmlSetArr = $(htmlSet).find('sen'); 
console.log("array using find"); 
console.log(htmlSetArr); 
console.log($(htmlSet).find('.h')) 
var htmlSetArr1 = $(htmlSet).filter('sen'); 
console.log("array using filter"); 
console.log(htmlSetArr1); 
0

這工作:

$('.h').each(function(e){ 
    console.log($(this)); 
}); 

或使用仙標籤:

// Using the sen tag... 
$('sen').each(function(e){ 
    console.log($(this)); 
}); 

https://jsfiddle.net/kxt4x55m/5/

+0

的數據存儲在變量,它是不是在頁面上。在那種情況下,無論如何我需要使用'查找',它不能正常工作。 – pravid