我有下面的代码,我只需要帮助找出从下面的内容节点获取html而不是明文的最佳方法。非常感谢任何帮助。
sKey = objItem.GetAttribute("id")
Title = objItem.selectSingleNode("title").text
Blurb = objItem.selectSingleNode("blurb").text
Content = objItem.selectSingleNode("content").text
Image = objItem.selectSingleNode("image").text
myDate = objItem.selectSingleNode("date").text
myMonth = objItem.selectSingleNode("month").text
答案 0 :(得分:0)
根据我的经验,使用Classic ASP处理XML的最佳方法是使用XSL样式表。
XSLT在基础层面上很容易学习,尽管学习曲线稍后会变得更加陡峭。
我推荐w3schools教程
一旦你编写了样式表,如果你有一个本地XML源,你的asp代码就会是这样的
set xml = Server.CreateObject("Msxml2.DomDocument")
xml.load(Server.Mappath("source.xml"))
set xsl = Server.CreateObject("Msxml2.DomDocument")
xsl.load(Server.Mappath("stylesheet.xsl"))
Response.Write(xml.transformNode(xsl))
set xsl = nothing
set xml = nothing
如果xml来自远程网址,那么它会更复杂一些
set xml = Server.CreateObject("Msxml2.DomDocument")
xml.setProperty "ServerHTTPRequest", true
xml.async = false
xml.validateOnParse = false
xml.load("http://xmlsource.com")
set xsl = Server.CreateObject("Msxml2.DomDocument")
xsl.load(Server.Mappath("stylesheet.xsl"))
Response.Write(xml.transformNode(xsl))
set xsl = nothing
set xml = nothing
修改
<h2><%= Title %></h2>
答案 1 :(得分:0)
您可以使用xml
属性而不是现在使用的text
属性来获取节点的XML:
dim o_xml, o_node
set o_xml = Server.CreateObject("Msxml2.DomDocument")
o_xml.load("books.xml")
set o_node = o_xml.selectSingleNode("//catalog/book[@id='bk102']")
Response.Write Server.htmlEncode(o_node.xml)
文档:http://msdn.microsoft.com/en-us/library/ms755989%28v=vs.85%29.aspx