XML DOM Add Nodes
သင်ကိုယ်တိုင်စမ်းကြည့်ပါ - ဥပမာများ
အောက်ပါဥပမာများသည် XML ဖိုင် books.xml ကို အသုံးပြုသည် ။
ဤဥပမာသည် ရှိပြီးသား node တစ်ခုသို့ ကလေး node ကိုထည့်ရန် appendChild() ကိုအသုံးပြုသည်။
ဤဥပမာသည် သတ်မှတ်ထားသော ကလေး node တစ်ခုရှေ့တွင် node တစ်ခုထည့်သွင်းရန် insertBefore() ကိုအသုံးပြုသည်။
ဤဥပမာသည် ရည်ညွှန်းချက်အသစ်တစ်ခုထည့်ရန် setAttribute() နည်းလမ်းကို အသုံးပြုသည်။
ဤဥပမာသည် ရှိပြီးသား text node ထဲသို့ အချက်အလက်ထည့်ရန် insertData() ကို အသုံးပြုသည်။
Node တစ်ခုထည့်ပါ - appendChild()
appendChild () နည်းလမ်းသည် ရှိပြီးသား node တစ်ခုသို့ ကလေး node တစ်ခုကို ပေါင်းထည့်သည်။
ရှိပြီးသား ကလေး node တစ်ခုခုပြီးနောက် node အသစ်ကို ပေါင်းထည့်သည် (ထပ်ထည့်သည်)။
မှတ်ချက်- node ၏ အနေအထားသည် အရေးကြီးပါက insertBefore() ကို အသုံးပြုပါ။
ဤကုဒ်အပိုင်းအစသည် ဒြပ်စင်တစ်ခု (<edition>) ကို ဖန်တီးပြီး ပထမ <book> ဒြပ်စင်၏ နောက်ဆုံးကလေးနောက်တွင် ၎င်းကို ပေါင်းထည့်သည်-
ဥပမာ
newEle = xmlDoc.createElement("edition");
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
ဥပမာ ရှင်းပြထားသည်-
- " books.xml " ကို xmlDoc တွင် တင်ထားသည်ဆိုပါစို့
- node အသစ် <edition> ဖန်တီးပါ။
- node ကို ပထမ <book> ဒြပ်စင်သို့ ပေါင်းထည့်ပါ။
ဤကုဒ်အပိုင်းအစသည် အထက်ဖော်ပြပါအတိုင်း လုပ်ဆောင်သော်လည်း၊ ဒြပ်စင်အသစ်ကို တန်ဖိုးတစ်ခုဖြင့် ပေါင်းထည့်သည်-
ဥပမာ
newEle = xmlDoc.createElement("edition");
newText=xmlDoc.createTextNode("first");
newEle.appendChild(newText);
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
ဥပမာ ရှင်းပြထားသည်-
- " books.xml " ကို xmlDoc တွင် တင်ထားသည်ဆိုပါစို့
- node အသစ် <edition> ဖန်တီးပါ။
- စာသား Node အသစ် "ပထမ" ဖန်တီးပါ
- စာသား node ကို <edition> node သို့ ပေါင်းထည့်ပါ။
- <book> ဒြပ်စင်သို့ <addition> node ကို ပေါင်းထည့်ပါ။
Node တစ်ခုထည့်ပါ - insertBefore()
insertBefore () method သည် သတ်မှတ်ထားသော ကလေး node တစ်ခုရှေ့တွင် node တစ်ခုကို ထည့်သွင်းသည်။
Add node ၏ အနေအထားသည် အရေးကြီးသောအခါ ဤနည်းလမ်းသည် အသုံးဝင်သည်-
ဥပမာ
newNode = xmlDoc.createElement("book");
x = xmlDoc.documentElement;
y = xmlDoc.getElementsByTagName("book")[3];
x.insertBefore(newNode,y);
ဥပမာ ရှင်းပြထားသည်-
- " books.xml " ကို xmlDoc တွင် တင်ထားသည်ဆိုပါစို့
- Element Node အသစ် <book> ကို ဖန်တီးပါ။
- နောက်ဆုံး <book> element node ၏ ရှေ့တွင် node အသစ်ကို ထည့်သွင်းပါ။
insertBefore() ၏ ဒုတိယဘောင်သည် ပျက်သွားပါက၊ နောက်ဆုံးရှိပြီးသား ကလေး node ပြီးနောက် node အသစ်ကို ပေါင်းထည့်မည်ဖြစ်သည်။
x.insertBefore(newNode၊null) နှင့် x.appendChild(newNode) နှစ်ခုစလုံးသည် x တွင် ကလေး node အသစ်တစ်ခုကို ထပ်ပေါင်းပါမည်။
အရည်အချင်းအသစ်တစ်ခုထည့်ပါ။
setAttribute () method သည် attribute တစ်ခု၏တန်ဖိုးကို သတ်မှတ်ပေးသည်။
ဥပမာ
xmlDoc.getElementsByTagName('book')[0].setAttribute("edition","first");
ဥပမာ ရှင်းပြထားသည်-
- " books.xml " ကို xmlDoc တွင် တင်ထားသည်ဆိုပါစို့
- ပထမ <book> ဒြပ်စင်အတွက် attribute "edition" ၏တန်ဖိုးကို "first" သို့ သတ်မှတ်ပါ။
add Attribute() ဟုခေါ်သည့် နည်းလမ်းမရှိပါက
setAttribute() သည် attribute မပါရှိပါက အသစ်တစ်ခုဖန်တီးပေးမည်ဖြစ်ပါသည်။
မှတ်ချက်- ရည်ညွှန်းချက်ရှိပြီးသားဖြစ်ပါက၊ setAttribute() နည်းလမ်းသည် ရှိပြီးသားတန်ဖိုးကို ထပ်ရေးပါမည်။
Text Node တစ်ခုသို့ စာသားထည့်ပါ - insertData()
insertData () method သည် ရှိပြီးသား text node ထဲသို့ ဒေတာကို ထည့်သွင်းသည်။
insertData() method တွင် parameter နှစ်ခုရှိသည်။
- အော့ဖ်ဆက် - စာလုံးများကို စတင်ထည့်သွင်းရမည့်နေရာ (သုညမှစတင်သည်)
- string - ထည့်သွင်းရန် string
အောက်ပါ ကုဒ်အပိုင်းအစသည် တင်ထားသော XML ၏ ပထမဆုံး <title> ဒြပ်စင်၏ စာသား Node သို့ "Easy" ကို ပေါင်းထည့်ပါမည်-
ဥပမာ
xmlDoc.getElementsByTagName("title")[0].childNodes[0].insertData(0,"Easy ");