具有类似标记/类

时间:2017-04-17 12:23:44

标签: jquery html filter find

我有一个带有一些文字的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);

2 个答案:

答案 0 :(得分:0)

这有效:

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

或使用sen标签:

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

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

答案 1 :(得分: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);