ColdFusion是否自动生成基本HTML标记?

ColdFusion是否自动生成基本HTML标记?,coldfusion,Coldfusion,ColdFusion是否自动生成基本HTML标记,如: <HTML> <head></head> <body></body> </HTML> 或者您必须将其包含在源代码(如ASP或PHP)中吗?将其包含在源代码中。即使它真的自动添加了它们(事实并非如此),您几乎总是需要更多的控制(即,设置元标记) 顺便说一句,你甚至不需要那些标签。以下代码段应在大多数浏览器中正确显示 <div> HI </di

ColdFusion是否自动生成基本HTML标记,如:

   <HTML> <head></head> <body></body> </HTML>


或者您必须将其包含在源代码(如ASP或PHP)中吗?

将其包含在源代码中。即使它真的自动添加了它们(事实并非如此),您几乎总是需要更多的控制(即,设置元标记)

顺便说一句,你甚至不需要那些标签。以下代码段应在大多数浏览器中正确显示

<div> HI </div>
HI

我个人不希望ColdFusion包含这些标记,因为我并不总是输出HTML


此外,与PHP不同,我想不出最简单的解释方法是:

CFML代码检索、计算和显示HTML文档中的信息

因此,如果您使用的是任何类型的框架,那么每个页面上的头include文件将包含

<HTML> <head></head><body>

页脚页面将包括

</body> </HTML>

当然,就像任何事情一样,如果出于某种原因,您想,您可以编写一些程序来输出这些信息

我发现CFML是HTML中保持可读性的最简单语法,保持这种方式也没什么大不了的


希望有帮助

您可以创建一个自定义标记来执行此操作

例如,在每个需要标准模板的页面中,可以使用以下内容:

<cf_page
    title  = "MyTitle"
    styles = "base.css,form.css,theme.css"
    >

    Main Page Content

</cf_page>

要回答您的问题,是的,您需要在页面中包含标记


正如其他海报所指出的,它可能不是您想要输出的HTML,比如PDF文档或JSON。CF使这类内容变得非常简单,这也是它吸引人的一部分。

或者,选择一个基本的模板设置,使用(meta.cfm、)header.cfm、sidebar.cfm、footer.cfm,并在每个页面上使用
标记。比这更好的是,使用一个框架通过控制器来管理所有这些内容,这样可以使不同格式的内容输出更简单。

不,Coldfusion将不包含任何您不告诉它的内容

对于需要HTML/BODY标记(即不是要粘贴的代码块)的常规页面,您可以执行任意数量的自定义函数/标记来输出HTML/BODY标记,但总的来说,最简单的方法是直接键入它们

现在,您可以使用一些页眉/页脚代码来自动将它们插入,但这可能会导致在某些情况下需要更多的逻辑来排除它们。如果你想找一些简单的东西,那就太过分了


注意,CF提供的一些小部件将生成一些html。例如,CFTABLE将在某个级别生成一个表标记。但这主要是一种简化表创建的方法,而HTML/BODY无法变得更简单。

如果。。。这是一个很大的如果。。。如果您不介意每个请求都有开始和结束HTML标记,那么可以将它们添加到Application.cfm/OnRequestEnd.cfm或Application.cfc中

Application.cfm:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
<head>
    <title>Page title here</title>
</head>
<body>

页面标题在这里
OnRequestEnd.cfm:

</body>
</html>

或Application.cfc-OnRequest():


页面标题在这里

不,这不是最好的方法,因为它非常有限,但它是另一种方法!:OD

很抱歉问这样一个问题,但我对CF支持的大量令人困惑的标记感到困惑,但CF是否类似于PHP,您可以在一些开始标记之外编写HTML,如“除非您试图提高某些页面的性能,否则无需刷新CF?”(如刷新标题,以便外部文档更快开始加载)@jeremy:要回答你的问题,是的,这在这方面与PHP类似。CF标记在发送到浏览器之前从HTML中“取出”处理。不,你确实需要HTML、头部和身体标记。当你穿过街道时,你不需要注意交通灯,它们当然不会阻止你行走。明白我的意思吗?shylent,HTML5您可以合法地省略很多标记—html,尤其是head和body,一旦指定为文件的第一个内容,它们就成为可选的(打开和关闭)。我还要注意的是,cfoutput计算并输出ColdFusion表达式,默认情况下,通用html不需要(在某些特定情况下,HTML也需要它,但您必须特别启用该处理模式)。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
<head>
    <title>Page title here</title>
</head>
<body>
</body>
</html>
<cffunction name="OnRequest" output="true" returntype="void">

    <cfargument name="targetPage" type="string" required="true">

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    <html>
    <head>
        <title>Page title here</title>
    </head>
    <body>
        <cfinclude template="#ARGUMENTS.targetPage#">
    </body>
    </html>

</cffunction>