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" အရ အကွက် အချက်များ ကို ပြုပြင်ကြသည်。
သိပ်သည့်အချက် ဝင်ရောက်ရန်
သိပ်သည့်အချက် မှ ဝင်ရောက်ရန် သုံးနိုင်သော နှစ်မျိုး ရှိသည်
- getElementsByTagName() မူကြမ်း အသုံးပြုခြင်း
- သိပ်သည့်အချက် ဈေးနယ်ကို စုစုပေါင်းလျှက် (ပြန်လည်ကြည့်ရှု) လုပ်ဆောင်ရသည်
- သိပ်သည့်အချက်များ အသုံးပြုပြီး သိပ်သည့်အချက် ဈေးနယ်တွင် လမ်းကြောင်းကို ကြည့်ရှုရသည်
getElementsByTagName() မူကြမ်း
getElementsByTagName() သည် အမည်ဖြင့် သတ်မှတ်ထားသော အကွက်များ ကို ပြန်အပ်သည်。
အက္ခရာ
node.getElementsByTagName("tagname");
实例
下面的例子返回 x 元素下的所有
x.getElementsByTagName("title");
请注意,上面的例子仅返回 x 节点下的
xmlDoc.getElementsByTagName("title");
在这里,xmlDoc 就是文档本身(文档节点)。
DOM Node List
getElementsByTagName() 方法返回节点列表 (node list)。节点列表是节点的数组。
下面的代码通过使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中,然后在变量 x 中存储
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title");
可通过下标访问 x 中的
y=x[2];
注释:下标以 0 起始。
在本教程中稍后的章节,您将学到更多有关 Node List 的知识。
DOM Node List Length
length 属性定义节点列表的长度(即节点的数目)。
您能够通过使用 length 属性来循环一个节点列表:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title"); for (i=0;iအကျိုးသုံး ဖော်ပြချက်
- 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc
- 取得所有
元素节点 - 输出每个
元素的文本节点的值
Node Type
XML 文档的 documentElement 属性是根节点。
节点的 nodeName 属性是节点的名称。
节点的 nodeType 属性是节点的类型。
您将在本教程的下一节中学习更多有关节点属性的知识。
လိပ် ကို လည်းကောင်း
အောက်ရှိ ကိုယ်လိပ် ကို ပြုလုပ်သော ကိုယ်လိပ် ဖြင့် လိပ်ကို စစ်ဆေးပါ။ လိပ်အမျိုးအစား သည် အရာဝတ္တု ဖြစ်လျှင်
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement.childNodes; for (i=0;iအကျိုးသုံး ဖော်ပြချက်
- 通过使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
- အခြေခံ အရာဝတ္တု ပုဂ္ဂိုလ်ကို ရယူပါ
- ကျိုးသို့မဟုတ် ပိုင်ဆိုင်သော လိပ်ဖြင့် လိပ်အမျိုးအစား ကို စစ်ဆေးပါ။ လိပ်အမျိုးအစား သည် "1" ဖြစ်လျှင် အရာဝတ္တု လိပ်ဖြစ်ပါသည်
- 如果是元素节点,则输出节点的名称
利用节点的关系进行导航
下面的代码通过利用节点的关系在节点树中进行导航:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0].childNodes; y=xmlDoc.getElementsByTagName("book")[0].firstChild; for (i=0;i"); } y=y.nextSibling; }
- 通过使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
- 获得第一个 book 元素的子节点
- 把 "y" 变量设置为第一个 book 元素的第一个子节点
- 检查每个子节点的节点类型,如果节点类型是 "1",则是元素节点
- 如果是元素节点,则输出该节点的名称
- 把 "y" 变量设置为下一个同级节点,并再次运行循环