用ASP调用XML数据的问题…
(1)我的xml文件内容如下:
############### index.xml ###########################
<?xml version="1.0" encoding="gb2312"?>
<vrml_data>
<shape>Box</shape>
<color>0 0 1</color>
</vrml_data>
#####################################################
(2)我想在asp里读取xml文件里的shape和color值。其中,asp文件里涉及shape和color值的如下所示。(程序如下,且shape和color分别为从xml中所读取的shape和color元素中的值)
################## index.asp #########################
<html>
<head>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="10">
<tr>
<td>
<%
Dim objXML
Set objXML = Server.CreateObject("microsoft.XMLDOM")
objXML.Load "E:\Designer\try\index.xml"
'装载XML文档,Load方法的参数指定为你的XML文件的服务器物理路径
'开始漫游XML的DOM
'获得XML根对象的一个引用
Set objRoot = objXML.documentElement.firstChild
set shapeField=objRoot.childNodes(0).Text
'通过漫游ChildNodes集合,而获得各个子节点对象的Text属性
<embed
src="3.asp?shape=<% =Request.QueryString("shapeField")%>&color=1 0 0"
type="model/vrml"
width="400"
height="265"
>
'引用另一个页面
'清除变量
Set objXML = Nothing
%>
</td>
</tr>
</table>
</body>
</html>
#####################################################
不知这样写对了没有,可是index.asp文件运行到:embed语句时就会说出错,单独用这样的语句是不会出错的,也就是应该不会是这句本身的错误。怎么办?
问题点数:100、回复次数:4Top
1 楼youbest(冲天飞豹)回复于 2003-05-02 13:37:59 得分 40
当然有错
改成
############### index.xml ###########################
<?xml version="1.0" encoding="gb2312"?>
<vrml_data>
<shape>Box</shape>
<color>0 0 1</color>
</vrml_data>
#####################################################
(2)我想在asp里读取xml文件里的shape和color值。其中,asp文件里涉及shape和color值的如下所示。(程序如下,且shape和color分别为从xml中所读取的shape和color元素中的值)
################## index.asp #########################
<html>
<head>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="10">
<tr>
<td>
<%
Dim objXML
Set objXML = Server.CreateObject("microsoft.XMLDOM")
objXML.Load "E:\Designer\try\index.xml"
'装载XML文档,Load方法的参数指定为你的XML文件的服务器物理路径
'开始漫游XML的DOM
'获得XML根对象的一个引用
Set objRoot = objXML.documentElement.firstChild
set shapeField=objRoot.childNodes(0).Text
'通过漫游ChildNodes集合,而获得各个子节点对象的Text属性
%>
<embed
src="3.asp?shape=<% =Request.QueryString("shapeField")%>&color=1 0 0"
type="model/vrml"
width="400"
height="265"
>
<%
'引用另一个页面
'清除变量
Set objXML = Nothing
%>
</td>
</tr>
</table>
</body>
</html>
#####################################################
试试Top
2 楼Asaning(半导体)回复于 2003-05-02 13:48:46 得分 0
你是改了一下 <% …%>吧,
可是有如下出错提示:
#####################################################
Microsoft VBScript 编译器错误 错误 '800a03f6'
缺少 'End'
/iisHelp/common/500-100.asp,行242
Microsoft VBScript 运行时错误 错误 '800a01a8'
缺少对象: '[string: "Box"]'
/try/try/try4.asp,行17
#####################################################
怎么办?第17 行为:set shapeField=objRoot.childNodes(0).TextTop
3 楼Asaning(半导体)回复于 2003-05-02 17:40:27 得分 0
应该是下面两句有问题,但不知怎么样去改。
Set objRoot = objXML.documentElement.firstChild
set shapeField=objRoot.childNodes(0).TextTop
4 楼ChinaOk(农村表哥)回复于 2003-05-02 20:50:01 得分 60
try
<html>
<head>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="10">
<tr>
<td>
<%
Dim objXML
Set objXML = Server.CreateObject("microsoft.XMLDOM")
objXML.Load "E:\Designer\try\index.xml"
'装载XML文档,Load方法的参数指定为你的XML文件的服务器物理路径
'开始漫游XML的DOM
'获得XML根对象的一个引用
Set objRoot = objXML.documentElement.firstChild
shapeFieldValue=objRoot.Text
'通过漫游ChildNodes集合,而获得各个子节点对象的Text属性
<embed
src="3.asp?shape=<% =Request.QueryString("shapeField")%>&color=1 0 0"
type="model/vrml"
width="400"
height="265"
>
'引用另一个页面
'清除变量
Set objXML = Nothing
%>
</td>
</tr>
</table>
</body>
</html>Top




