1

以下のコードを参照してください。

xml 値

<root>
   <item>
      <name>name 1</name>          
      <class>A</class>
      <age>15</age>
    </item>
   <item>
      <name>name 2</name>         
      <class>A</class>
      <age>15</age>
    </item>
   <item>
      <name>name 3</name>         
      <class>B</class>
      <age>15</age>
    </item>
   <item>
      <name>name 4</name>         
      <class>A</class>
      <age>16</age>
    </item>
   <item>
      <name>name 5</name>
      <class>B</class>
      <age>15</age>
    </item>
</root>

class = "A" AND age = 15 の項目を取得したいのですが、jQuery セレクターを使用してこれを行うにはどうすればよいですか。

このようなもの

$items = $(root).find("item age='25'&&class='A'").

4

3 に答える 3

2
var $items = $(root).find('item').filter(function() {
    return $(this).find('age').text() == 25 && $(this).find('class').text() == 'a';
})
于 2012-09-27T11:34:30.533 に答える
2

これは私がしました。

$("item").filter(function(i){
   return $(this).find("class").text()=="A" &&  $(this).find("age").text()=="15"
       });

jsFiddle

于 2012-09-27T11:34:45.743 に答える
1

私はあなたができることをここであなたの問題を理解しました-

var $items = [];
$('age').each(function(){
 if($('age').html()=="15"){
   $item = $(this).parent();
   if($('class',$item).html()=="A")
      $items.push($item);
 });

$items は、class = "A" AND age = 15 のすべてのアイテムの配列です。

于 2012-09-27T11:38:19.643 に答える