2017-04-17 14 views
0

私はあるテキストでdivを持っています。私はこのdiv内の同様のタグのすべての要素の配列を取得する必要があります。 私は、選択された文字列データを変数に格納し、オブジェクトに変換しています。 この文字列に "sen"タグを含むすべての要素を取得する必要があります。 私は 'find'と 'filter'を使ってみましたが、どちらも不完全な結果になっています。 私の必要な配列は、すべての '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内のコンテンツをラップし、「検索」がうまく機能しました。

ここでは更新のフィドル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

データが変数に保存され、それがページ上にありません。その場合、私はとにかく 'find'を使う必要があり、正しく動作しません。 – pravid

関連する問題