当我在FF3.5中加载一个包含e4x的页面时,我不知道e4x甚至存在于浏览器的JS实现中。下面是注意事项,但这是我的HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>e4x test</title>
<script type="text/javascript" src="lib/dojo/dojo/dojo.js">
</script>
<script type="text/javascript;e4x=1">
function hello() {
var x = new XML();
x = <foo></foo>
dojo.byId("container").innerHTML = "Print me!" + x.toXMLString();
}
</script>
<script type="text/javascript">
dojo.addOnLoad(hello);
</script>
</head>
<body>
<div id="container">
</div>
</body>
</html>当我在firebug中检查时,它显示x没有toString()方法,并且我的集成开发环境(aptana)认为XML不是一种对象类型。有人知道我做错了什么吗?
发布于 2009-09-03 01:54:38
我猜它一直都在工作,但是你的浏览器不能识别"foo“标签,因为它不知道如何呈现它,所以它忽略了它。通过在你的foo标签中放一些东西,你就可以得到内容了。
顺便说一句:新的XML()语句是完全不必要的。你可以这样做:
var x = <foo>bar</foo>;将为您创建一个新的XML对象。说new XML()就像说new String()一样。你可以这样做,但这只是浪费空间。
发布于 2009-09-03 01:13:28
事实证明,我需要在XML中使用更多内容才能打印出任何内容。举个例子,bar是可行的。我不知道为什么,但这就是修复它的方法!
https://stackoverflow.com/questions/1370832
复制相似问题