2

次のXMLファイルを使用しています

     <OnThisDate date="2013-02-22">
      <event jobnumber="14434" allocated="1" name="ADI UK ">
        <i1001 driverID="30" driverName="None None" groupname="i100"/>
        <i251 driverID="0" driverName="" groupname="i25"/>
        <i252 driverID="0" driverName="" groupname="i25"/>
      </event>

      <event jobnumber="14559" allocated="1" name="Travel">
        <i1006 driverID="46" driverName="Martin Macklin" groupname="i100"/>
      </event>

      <event jobnumber="14560" allocated="1" name="Travel">
        <i1005 driverID="0" driverName="" groupname="i100"/>
      </event>

      <event jobnumber="14690" allocated="1" name="Travel">
        <i253 driverID="0" driverName="" groupname="i25"/>
      </event>

      <event jobnumber="14695" allocated="1" name="Holiday">
        <i602 driverID="10" driverName="Alan Linney " groupname="i60"/>
      </event>

      <event jobnumber="13595" allocated="1" name="Sandown Park Racecourse">
        <i1002 driverID="6" driverName="Simon Latcham" groupname="i100"/>
      </event>

      <event jobnumber="14447" allocated="1" name="Sandown Racecourse">
        <i125 driverID="35" driverName="Carl Boxall" groupname="i12"/>
      </event>

      <event jobnumber="14030" allocated="1" name="Warwick Racecourse">
         <i601 driverID="5" driverName="Tom Robson" groupname="i60"/>
      </event>
     </OnThisDate>

各イベントの下のノードにはgroupname属性があり、グループ名ごとに合計結果を取得したいので、この例では、groupnamei25の合計は3になります。

このコードを使用して、イベントの子の合計を取得することができました

var count=$(data).find('event').children().size();
console.log(count) 

しかし、残りの部分を機能させる方法を理解することはできません

何か助けてください?、 前もって感謝します

4

1 に答える 1

1

特定のグループ名を持つすべての要素の数を取得するには:

var groupname = "i25";
var count = $(data).find('*[groupname="' + groupname + '"]').length;

デモ

補足:.size()jQuery1.8で非推奨になりました。代わりにの使用を.lengthお勧めします。

于 2013-02-21T17:01:53.210 に答える