【 tulaoshi.com - ASP 】
文档被存档之后,如果你再打开这个文档,那么则会以如下代码列表形式出现:
MyXMLDoc.xml:
<?xml version="1.0"?>
<rootElement>
<childElement1 />
<childElement2 />
</rootElement>
在"MyXMLDoc.xml"文档中,childElement1 和 childElement2 会以空的elements形式出现。如果它们被赋值,那么每个值都将由标记符括起来。
现在,让我们来思考一下如何将HTML数据写到XML文档中去。我们已经知道该如何创建和存储XML文档。将一个表单数据写到XML文档中去的过程,现在已演变成为Request Object"s Form Collection以及将每一个表单域的value书定到XML element value 中去的步骤重复。以上可以通过ASP来完成。
例:将数据输送到XML
现在,我们举一个普通的HTML表单的例子来说明。此Form有用户名,地址,电话,以及E-MAIL等几个域。并将这些信息写入XML文件中并保存。
EnterContact.html:
<html>
<head>
<title>
Contact Information
</title>
</head>
<body>
<form action="processForm.asp" method="post">
<h3>请输入你的联系方式</h3>
First Name: <input type="text" id="firstName" name="firstName"><br>
Last Name: <input type="text" id="lastName" name="lastName"><br>
Address #1: <input type="text" id="address1" name="address1"><br>
Address #2: <input type="text" id="address2" name="address2"><br>
Phone Number: <input type="text" id="phone" name="phone"><br>
E-Mail: <input type="text" id="email" name="email"><br>
<input type="submit" id="btnSub" name="btnSub" value="Submit"><br>
</form>
</body>
</html>
将Form 中数据发送到processForm.asp.。这是一个ASP页面,在这个ASP中将反复调用同一个函数将form数据写入XML文件。
processForm.asp:
<%
"--------------------------------------------------------------------
"The "ConvertFormtoXML" Function accepts to parameters.
"strXMLFilePath - The physical path where the XML file will be saved.
"strFileName - The name of the XML file that will be saved.
"--------------------------------------------------------------------
Function ConvertFormtoXML(strXMLFilePath, strFileName)
"Declare local variables.
Dim objDom
Dim objRoot
Dim objField
Dim objFieldValue
Dim objattID
Dim objattTabOrder
Dim objPI
Dim x
"Instantiate the Microsoft XMLDOM.
Set objDom = server.CreateObject("Microsoft.XMLDOM")
objDom.preserveWhiteSpace = True
"Create your root element and append it to the XML document.
Set objRoot = objDom.createElement("contact")
objDom.appendChild objRoot
"Iterate through the Form Collection of the Request Object.
For x = 1 To Request.Form.Count
"Check to see if "btn" is in the name of the form element.
"If it is, then it is a button and we do not want to add it
"to the XML document.
If instr(1,Request.Form.Key(x),"btn") = 0 Then
"Create an element, "field".
Set objField = objDom.createElement("field")
&