XML DOM 访问节点

DOM အသုံးပြုပြီး သိပ်သည့် XML ဖိုင် အရ အကွက် အချက်များ ကို အားလုံး အားလုံး ကို အားနှင့် ဝင်ရောက်နိုင်ပါသည်。

实例

အောက်ပါ အကျိုးသည် သိပ်သည့် XML ဖိုင် အသုံးပြုပြီး books.xml.

မူကြမ်း loadXMLDoc(),အပြင်ဘက် JavaScript တွင် အသုံးပြုပြီး XML ဖိုင် ကို သုံးစွဲရန်

အကွက် အချက် အစီအစဉ် အချက် အား အသုံးပြုပြီး အကွက် အချက် ကို ဝင်ရောက်ရန်
ဤအကျိုးသည် သိပ်သည့်အချက် getElementsByTagname() မူကြမ်း အသုံးပြုပြီး "books.xml" အရ အခြေခံ <title> အကွက် အချက်များ အား ပြန်လည်လည် ကြည့်ရှုရသည်。
length အချက် အသုံးပြုပြီး အကွက် အချက်များ ကို ပြန်လည်လည် ကြည့်ရှုရန်
ဤအကျိုးသည် သိပ်သည့်အချက် length အချက် အသုံးပြုပြီး "books.xml" အရ အခြေခံ <title> အကွက် အချက်များ အား ပြန်လည်လည် ကြည့်ရှုရသည်。
အကွက် အချက် အမျိုးအစား ကြည့်ရှုရန်
ဤအကျိုးသည် သိပ်သည့်အချက် nodeType အချက် အသုံးပြုပြီး "books.xml" အရ အခြေခံ အကွက် အချက် အမျိုးအစား ကို နားလည်ရသည်。
အကွက် အချက်များ ကို ပြန်လည်လည် ကြည့်ရှုရသည်
ဤအကျိုးသည် သိပ်သည့်အချက် nodeType အချက် အသုံးပြုပြီး "books.xml" အရ အကွက် အချက်များ ကို ပြုပြင်ကြသည်。
သိပ်သည့်အချက် အသုံးပြုပြီး အကွက် အချက်များ ကို ပြန်လည်လည် ကြည့်ရှုရသည်
ဤအကျိုးသည် သိပ်သည့်အချက် nodeType နှင့် nextSibling အချက် အသုံးပြုပြီး "books.xml" အရ အကွက် အချက်များ ကို ပြုပြင်ကြသည်。

သိပ်သည့်အချက် ဝင်ရောက်ရန်

သိပ်သည့်အချက် မှ ဝင်ရောက်ရန် သုံးနိုင်သော နှစ်မျိုး ရှိသည်

  1. getElementsByTagName() မူကြမ်း အသုံးပြုခြင်း
  2. သိပ်သည့်အချက် ဈေးနယ်ကို စုစုပေါင်းလျှက် (ပြန်လည်ကြည့်ရှု) လုပ်ဆောင်ရသည်
  3. သိပ်သည့်အချက်များ အသုံးပြုပြီး သိပ်သည့်အချက် ဈေးနယ်တွင် လမ်းကြောင်းကို ကြည့်ရှုရသည်

getElementsByTagName() မူကြမ်း

getElementsByTagName() သည် အမည်ဖြင့် သတ်မှတ်ထားသော အကွက်များ ကို ပြန်အပ်သည်。

အက္ခရာ

node.getElementsByTagName("tagname");

实例

下面的例子返回 x 元素下的所有 元素:</p> <pre>x.getElementsByTagName("title");</pre> <p>请注意,上面的例子仅返回 x 节点下的 <title> 元素。要返回 XML 文档中的所有 <title> 元素,请使用:</p> <pre>xmlDoc.getElementsByTagName("title");</pre> <p>在这里,xmlDoc 就是文档本身(文档节点)。</p> </div> <div> <h2>DOM Node List</h2> <p>getElementsByTagName() 方法返回节点列表 (node list)。节点列表是节点的数组。</p> <p>下面的代码通过使用 <a href="/my/xmldom/dom_loadxmldoc.html" title="XML DOM 加载函数">loadXMLDoc()</a> 把 "<a href="/my/example/xdom/books.xml">books.xml</a>" 载入 xmlDoc 中,然后在变量 x 中存储 <title> 节点的一个列表:</p> <pre>xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title");</pre> <p>可通过下标访问 x 中的 <title> 元素。要访问第三个 <title>,您可以编写:</p> <pre>y=x[2];</pre> <p class="tiy"><a target="_blank" href="/my/tiy/t.html?f=xdom_index">TIY</a></p> <p class="note"><span>注释:</span>下标以 0 起始。</p> <p>在本教程中稍后的章节,您将学到更多有关 Node List 的知识。</p> </div> <div> <h2>DOM Node List Length</h2> <p>length 属性定义节点列表的长度(即节点的数目)。</p> <p>您能够通过使用 length 属性来循环一个节点列表:</p> <pre>xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title"); for (i=0;i<x.length;i++) { document.write(x[i].childNodes[0].nodeValue); document.write("<br />"); }</pre> <h3>အကျိုးသုံး ဖော်ပြချက်</h3> <ol> <li>使用 <a href="/my/xmldom/dom_loadxmldoc.html">loadXMLDoc()</a> 把 "<a href="/my/example/xdom/books.xml">books.xml</a>" 载入 xmlDoc</li> <li>取得所有 <title> 元素节点</li> <li>输出每个 <title> 元素的文本节点的值</li> </ol> <p class="tiy"><a target="_blank" href="/my/tiy/t.html?f=xdom_list_loop">TIY</a></p> </div> <div> <h2>Node Type</h2> <p>XML 文档的 <em>documentElement</em> 属性是根节点。</p> <p>节点的 <em>nodeName</em> 属性是节点的名称。</p> <p>节点的 <em>nodeType</em> 属性是节点的类型。</p> <p>您将在本教程的下一节中学习更多有关节点属性的知识。</p> <p class="tiy"><a target="_blank" href="/my/tiy/t.html?f=xdom_root">TIY</a></p> </div> <div> <h2>လိပ် ကို လည်းကောင်း</h2> <p>အောက်ရှိ ကိုယ်လိပ် ကို ပြုလုပ်သော ကိုယ်လိပ် ဖြင့် လိပ်ကို စစ်ဆေးပါ။ လိပ်အမျိုးအစား သည် အရာဝတ္တု ဖြစ်လျှင်</p> <pre>xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement.childNodes; for (i=0;i<x.length;i++) { if (x[i].nodeType==1) {//Process only element nodes (type 1) document.write(x[i].nodeName); document.write("<br />"); } }</pre> <h3>အကျိုးသုံး ဖော်ပြချက်</h3> <ol> <li>通过使用 <a href="/my/xmldom/dom_loadxmldoc.html">loadXMLDoc()</a> 把 "<a href="/my/example/xdom/books.xml">books.xml</a>" 载入 xmlDoc 中</li> <li>အခြေခံ အရာဝတ္တု ပုဂ္ဂိုလ်ကို ရယူပါ</li> <li>ကျိုးသို့မဟုတ် ပိုင်ဆိုင်သော လိပ်ဖြင့် လိပ်အမျိုးအစား ကို စစ်ဆေးပါ။ လိပ်အမျိုးအစား သည် "1" ဖြစ်လျှင် အရာဝတ္တု လိပ်ဖြစ်ပါသည်</li> <li>如果是元素节点,则输出节点的名称</li> </ol> <p class="tiy"><a target="_blank" href="/my/tiy/t.html?f=xdom_loop">TIY</a></p> </div> <div> <h2>利用节点的关系进行导航</h2> <p>下面的代码通过利用节点的关系在节点树中进行导航:</p> <pre>xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0].childNodes; y=xmlDoc.getElementsByTagName("book")[0].firstChild; for (i=0;i<x.length;i++) { if (y.nodeType==1) {//Process only element nodes (type 1) document.write(y.nodeName + "<br />"); } y=y.nextSibling; }</pre> <ol> <li>通过使用 <a href="/my/xmldom/dom_loadxmldoc.html">loadXMLDoc()</a> 把 "<a href="/my/example/xdom/books.xml">books.xml</a>" 载入 xmlDoc 中</li> <li>获得第一个 book 元素的子节点</li> <li>把 "y" 变量设置为第一个 book 元素的第一个子节点</li> <li>检查每个子节点的节点类型,如果节点类型是 "1",则是元素节点</li> <li>如果是元素节点,则输出该节点的名称</li> <li>把 "y" 变量设置为下一个同级节点,并再次运行循环</li> </ol> <p class="tiy"><a target="_blank" href="/my/tiy/t.html?f=xdom_navigate">TIY</a></p> </div> <div id="bpn"> <ul> <li> 上一页 <a href="/my/xmldom/dom_methods.html" title="XML DOM - 属性和方法">DOM 属性和方法</a></li> <li> 下一页 <a href="/my/xmldom/dom_nodes_info.html" title="XML DOM 节点信息">DOM 节点信息</a></li> </ul> </div> <div style="background-color:#fcfdf8; padding:0;"> </div> </div> <!-- maincontent end --> <div id="sidebar"> <div><h3><center> 工具箱 </center><h3> <h5 id="tools_reference"><a href="/my/xmldom/xmldom_reference.html">XML DOM 参考手册</a></h5> <h5 id="tools_example"><a href="/my/example/xdom_examples.html">XML DOM အမှုထမ်း</a></h5> </div> <div><h3><center> 赞助商链接 </center><h3> <div id="sbtg"> <script src="/myjs/zzsr.js"></script> </div> </div> </div> <div id="footer"> <p id="p1"> CodeW3C.com 提供的内容仅用于培训和测试,不保证内容的正确性。通过使用本站内容随之而来的风险与本站无关。版权所有,保留一切权利。 </p> <p id="p2"> <a href="/my/about/about_use.html" title="အသုံးပြုခြင်း">အသုံးပြုခြင်း အခွင့်အရေး</a> <a href="/my/about/about_privacy.html" title="သတင်းအချက်">သတင်းအချက် အခွင့်အရေး</a> <a href="http://www.comfortsoftwaregroup.com/" target="_blank"><img src="/comfortsoftwaregroup.png"></a> <a href="http://www.ce4e.com/" target="_blank"><img src="/poweredby.png" alt="Powered by Ce4e.com"></a> </p> </div> </div> <!-- wrapper end --> <script src="/myjs/tongji.js"></script> </body> </html>