Dom xml解析并从循环中删除最后一个节点

时间:2014-05-26 03:55:28

标签: xml

我们如何删除或跳过嵌套中的节点?

实施例

下面,我如何跳过<node id="1">的最后一个孩子,即<node id="15">

   <?xml version="1.0" encoding="UTF-8"?>
    <node id="1" >
          <test1 key="">Bank</test1>
          <test2/>      
          <node id="2">
            <test1 >asdf2</test1>
              <test2>asdf2</test2>

            <node id="3">
              <test1 >asdf3</test1>
              <test2>asdf3</test2>

            </node>
            <node id="4">
             <test1 >asdf4</test1>
              <test2>asdf4</test2>

            </node>
            <node id="5">
              <test1 >asdf5</test1>
              <test2>asdf5</test2>
            </node>
            <node id="6">
             <test1 >asdf6</test1>
              <test2>asdf6</test2>
            </node>
            <node id="7">
              <test1 >asdf66</test1>
              <test2>asdf66</test2>
            </node>
            <node id="8">
              <test1 >asdf44</test1>
              <test2>asdf44</test2>
            </node>
          </node>
          <node id="9">
           <test1 >asd56f</test1>
              <test2>as56df</test2>
            <node id="10">
             <test1 >as56df</test1>
              <test2>asd56f</test2>
            </node>
            <node id="11">
              <test1 >as56df</test1>
              <test2>asd56f</test2>
            </node>
          </node>
          <node id="12">
            <test1 >asdf5</test1>
              <test2>asd6f</test2>
            <node id="13">
             <test1 >asd6f</test1>
              <test2>asd5f</test2>
            </node>
            <node id="14">
              <test1 >asdf55</test1>
              <test2>asdf55</test2>
            </node>
          </node>
          <node id="15">
            <test1 >asdf44</test1>
              <test2>asdf44</test2>
          </node>
        </node>

我试过了:

if(childNodelist.item(i).getNodeName().equals("test1")){ some logic }

1 个答案:

答案 0 :(得分:0)

#1 > node:not(:last-child) {rule;}

#node是父类型。 node:not是子元素类型。

所以,如果你有

<nodes id="container">
  <node></node>
  <node></node>
</nodes>

您可以使用:nodes[id="container"] > node:not(:last-child) {rule;}