用XSL.ASP编辑XML文档(2)
用XSL.ASP编辑XML文档(2),用XSL.ASP编辑XML文档(2)
编辑 Contact.asp 是一个比较普遍的现象。这儿有两个功能在编辑ASP页面中起了主要作用。第一个是loadXMLFile功能,它LOAD并传输XML文件使之显示出来;第二个是 updateXML 功能,它适用于编辑 XML文件国。
ASP File: EditContact.asp:
<%
'-----------------------------------------------------------
'"loadXMLFile" 函数接受两个参数.
'strXMLFile - XML文件的路径名和文件名.
'strXSLFilee - XSL文件的路径名和文件名.
'-----------------------------------------------------------
Function loadXMLFile(strXMLFile, strXSLFile)
'本地变量
Dim objXML Dim objXSL
'初始化XMLDOM对象.
set objXML = Server.CreateObject("Microsoft.XMLDOM")
'关闭同步加载的文件.
objXML.async = false
'加载XML文件.
objXML.load(strXMLFile)
'初始化用于加载XSL文件的XMLDOM对象.
set objXSL = Server.CreateObject("Microsoft.XMLDOM")
'Turn off asyncronous file loading.
objXSL.async = false 'Load the XSL file.
objXSL.load(strXSLFile)
'Use the "transformNode" method of the XMLDOM to apply the
'XSL stylesheet to the XML document. Then the output is
'written to the client.
Response.Write(objXML.transformNode(objXSL))
End Function
'-----------------------------------------------------------
'The "updateXML" Function accepts one parameter.
'strXMLFile - The path and file name of the XML file.
'-----------------------------------------------------------
Function updateXML(strXMLFile)
'Declare local variables.
Dim objDom
Dim objRoot
Dim objField
Dim x
'Instantiate the XMLDOM Object.
set objDOM = Server.CreateObject("Microsoft.XMLDOM")
'Turn off asyncronous file loading.
objDOM.async = false
'Load the XML file.
objDOM.load strXMLFile
'Set the objRoot variable equal to the root element of the
'XML file by calling the documentElement method of the
'objDOM (XMLDOM) object.
Set objRoot = objDom.documentElement
'Iterate through the Form Collection and write the
'submitted values to the XML file.
For x = 1 to Request.Form.Count
'Check see if "btn" is in the submitted value, if so,
'it is a button and should be ignored.
If instr(1,Request.Form.Key(x),"btn") = 0 Then
'Set objField variable equal to a field_value element by
'calling the selectSingleNode method of the objRoot
'(documentElement) object. The SelectSingleNode method
'accepts a string parameter for querying the XML document.
'In this case, the current value of the key property of
'the Form Collection is used to find the appropriate
'field_value element (more on this later).
Set objField = obj