標籤:des style blog http color io os ar java
在一個項目當中,我們需要把資料庫中的Xml欄位中的資訊表現在頁面中,如果用Sql進行操作,讀取。這樣的話,必然導致太複雜,於是我想到了,如果把Xml欄位先讀出來,然後用Js去操作,這樣豈不是簡單了許多,於是網上尋找了一些資料。實現了JS讀Xml欄位資訊的方法。
首先我們在頁面中放一個TextBox 用來放Xml欄位。切記:不可用Label,因為萬一Xml欄位資訊中有“”這種符號時,頁面會產生Js錯誤。
接下去,就是重點了。付JS代碼:
[javascript] view plaincopyprint?
- function createXml(str){
- if(document.all){
- var xmlDom=new ActiveXObject("Microsoft.XMLDOM")
- xmlDom.loadXML(str)
- return xmlDom
- }
- else
- return new DOMParser().parseFromString(str, "text/xml")
- }
-
- //以上的方法是將字串執行個體化為Xml
最後就是操作這個Xml 了。。。
[javascript] view plaincopyprint?
- window.onload=function () {
- var str=document.getElementById("ctl00_ContentPlaceHolder1_TextBox1").value;
- var obj=createXml(str);
-
- //得到根節點
- var root_node=obj.documentElement;
-
- var yh1="";
- for (i=0;i< root_node.childNodes[0].childNodes.length-1;i++)
- {
- yh1+=" "+(i+1)+"、"+root_node.childNodes[0].childNodes[i].getAttribute("Remark")+":"+root_node.childNodes[0].childNodes[i].firstChild.nodeValue ;
-
-
- yh1+="<br/>"
-
- }
- document.getElementById("ctl00_ContentPlaceHolder1_lblContent").innerHTML=yh1;
- }
-
- }
付Xml格式:
[xhtml] view plaincopyprint?
- <Info Remark="檔案模板"><Common Remark="通用配置"><DisCopy Remark="複印件折扣">100</DisCopy><DisOriginal Remark="折扣">100</DisOriginal><ArrearageLimit Remark="欠費上限">0</ArrearageLimit><YearPrice Remark="年費,元/年">0</YearPrice></Common></Info>
Javascript 操作 Sql中的Xml 欄位