設置 | 登錄 | 註冊

目前共有6篇帖子。

【JavaScript】JavaScript將XML對象轉換為XML字符串

1樓 218.89.43.* 2011-3-19 19:30
書上講解了怎樣將xml字符串轉換為xml對象,還講了怎樣創建節點、修改節點和刪除節點等等,但就是沒有講怎樣將XML對象轉換為XML字符串,這樣就導致了「創建節點、修改節點和刪除節點」沒有用處!(廢話,這些操作都只在內存進行,js又不能保存xml到伺服器上)
2樓 218.89.43.* 2011-3-19 19:31

這裡有一種辦法,就是把修改好的xml對象轉換成字符串,然後用ajax發送給伺服器端程序(比如php),再由伺服器端程序保存xml。

 

廢話少說,看標題「將XML對象轉換為XML字符串」。

3樓 218.89.43.* 2011-3-19 19:33

分析:

1.IE瀏覽器支持xml屬性(相當於php的asXML[不加參數]方法),但其他瀏覽器不支持。

2.除IE瀏覽器外的其他瀏覽器支持textContent方法,作用和xml屬性相同。

4樓 4Der 2011-3-19 19:54

代碼:

var xm=loadXML("../XML/window_login.xml");
function asXML(xmlObject){
 if (xmlObject.xml){
  return xmlObject.xml;
 }else{
  var xs=new XMLSerializer();
  var xv=xs.serializeToString(xmlObject);
  return xv;
 }
}

5樓 4Der 2011-3-19 19:55

讀取XML的函數:

var loadXMLFailed=false;
function loadXML(xmlFile){
 var _xmlDoc=null;
 var failed=false;
 if (window.ActiveXObject){
  _xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
 }else{
  try{
   _xmlDoc=document.implementation.createDocument("","",null);
   if (_xmlDoc.documentElement==null || typeof(_xmlDoc.documentElement)=='undefined') throw new Error();
  }catch(ex){
   var xmlhttp=new window.XMLHttpRequest();
   xmlhttp.open("GET",xmlFile,false);
   xmlhttp.send(null);
   _xmlDoc=xmlhttp.responseXML;
   failed=true;
  }
 }
 if ((!failed)&&_xmlDoc!=null){
  _xmlDoc.async=false;
  try{
   _xmlDoc.load(xmlFile);
  }catch(ex){
   _xmlDoc=null;
   if (!loadXMLFailed){
    alert('您的瀏覽器不支持XML,本站部分功能將可能無法使用,建議您更換瀏覽器!');
    loadXMLFailed=true;
   }
  }
 }
 return _xmlDoc;
}

6樓 4Der 2011-3-19 19:56

回覆:5樓

兼容六大瀏覽器(ie,firefox,opera,safari,chrome,搜狗高速瀏覽器)

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。