如何用js动态的生成一个xml文件

JavaScript016

如何用js动态的生成一个xml文件,第1张

var str

str ='<?xml version="1.0" encoding="utf-8" ?><?xml-stylesheet type="text/xsl" href= "example.xsl"?>'

str += "<Goods><id>"

生成字符串,然后用FSO生成文件啊fso.CreateTextFile

在ie6下面试过的 你看一下

<html>

<head>

<head>

<body><script>

<!--

function flvlist($name,$t) {

var fso, tf

fso = new ActiveXObject("scripting.FileSystemObject")

// 创建新文件

tf = fso.CreateTextFile("c:\\test.xml", true)

// 填写数据,并增加换行符

tf.WriteLine(" <?xml version=\"1.0\" encoding=\"utf-8\"?>")

tf.WriteLine(" <player showDisplay=\"yes\" showPlaylist=\"yes\" autoStart=\"yes\">")

//tf.WriteLine(" <item item_url=\"../flv/\"+$name+".flv" item_title="+$t+"></item>")

tf.WriteLine(" <song path=\""+$name+"\" title=\"" + $t + "\">")

tf.WriteLine(" </player>")

// 关闭文件

tf.Close()

}

-->

</script>

<form name="form1" method="post" action="">

<p>

<input name="aa" />

<input name="bb" />

</p>

<p>

<label>

<input type="submit" name="Submit" value="提交" onclick=javascript:flvlist(document.getElementsByName("aa")[0].value,document.getElementsByName("bb")[0].value)>

</label>

</p>

</form>

</body>

<html>

刚学习javascript,写一个小游戏做练习,现在想要做一个配置文件,练习一下XML的操作……

进入正题:

如下xml文件:profile.xml

XML/HTML

<?xml version="1.0" ?>

<configuration>

    <row>Hello</row>

    <col>word!</col>

</configuration>

在google搜索结果中出现频率比较高的一段代码:

javascript文件:test.js

JavaScript

var doc = loadXmlFile("profile.xml")

alert(doc.text)

function loadXmlFile(xmlFile){

  var xmlDom = null

  if (window.ActiveXObject){

    xmlDom = new ActiveXObject("Microsoft.XMLDOM")

    //xmlDom.loadXML(xmlFile)//如果用的是XML字符串

    xmlDom.load(xmlFile)//如果用的是xml文件。

  }else if (document.implementation && document.implementation.createDocument){

    var xmlhttp = new window.XMLHttpRequest()

    xmlhttp.open("GET", xmlFile, false)

    xmlhttp.send(null)

    xmlDom = xmlhttp.responseXML

  }else{

    xmlDom = null

  }

  return xmlDom

}

这个方法在IE下能正常输出“hello word”,IE9、以及IE9的IE7、IE8的兼容模式都正常。

但是在firefox下输出的是“undefined”

而Chrome下则无输出,提示 xmlhttp.send(null)这行 Uncaught Error: NETWORK_ERR:XMLHttpRequest Exception 101

还有一种方法是用JQuery

JavaScript code?

$.get('profile.xml',function(xml){    

        alert($(xml).text())    

    })

在Chrome下只弹出一个空警告框……