【发布时间】:2012-01-13 19:26:46
【问题描述】:
我正在尝试对无效 xhtml 的内容使用 XMLParse。在 html 代码中,标签未正确终止。为了终止它们,我使用替换功能来查找无效代码并将其替换为正确终止的代码。这样做时,我的应用程序出错并告诉我元标记无效:
解析 XML 文档时发生错误。
元素类型“meta”必须以匹配的结束标签“”结束。
我要验证的代码是:
<html>
<head>
<title>Impart Client Interface</title>
<link href="side_panel.css" rel="stylesheet" type="text/css">
<link href="default.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="data_tables.css" rel="stylesheet" type="text/css">
<link href="xp_button.css" rel="stylesheet" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
我在 CF 中创建的尝试处理此问题的是:
<cfset xml = objResponse.FileContent>
<cfset page.content = '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">'>
<cfset page.updatedcontent = replace('#page.content#','8859-1','8859-1" />"','')>
<Cfset page.link = 'type="text/css">'>
<cfset page.updatedLink = replace('#page.link#', 'css">', 'css" />', 'all')>
<cfset validXML = replace(#xml#, "#page.content#", "#page.updatedContent#", "")>
<cfset validXML = replace(#xml#, "#page.link#", "#page.UpdatedLink#", "all")>
<cfoutput>#validXML#</cfoutput>
<cfset parsethis = xmlparse(validXML)>
<cfdump var="#parsethis#">
我该如何解决这个错误?
【问题讨论】:
-
我希望你对这个 (x)HTML 的来源有一些可靠的控制 - 如果没有,这种方法肯定会继续令人头疼。
标签: coldfusion xml-parsing coldfusion-9