ColdFusion如果然后声明与HTML相关

时间:2014-07-09 20:53:41

标签: html coldfusion

嗨,我对ColdFusion很新。我的公司仍然使用它。我有以下代码我已经调整过。它似乎工作正常。

基本上我想说CountyName为null,不显示县HTML代码。当CountyName不为null时,请显示它。

<cfif isdefined("URL.LOCAL") and isdefined("URL.STATE_NO") is "true">
  <!----- If Local is the County (Contains the word County), the local 
   will be the County. (Do not want duplicate County results) ------>

  <cfif "#URL.LOCAL#" CONTAINS "County">
    <cfset LocalName="#URL.LOCAL#">
    <cfset StateNo=#URL.STATE_NO#>

    <!----- If Local is the City (does not contain the word County), 
    add the County code in addition to the City --->
  <cfelse> 
    <cfset LocalName="#URL.LOCAL#">
    <cfset CountyName="#URL.COUNTY#">
    <cfset StateNo=#URL.STATE_NO#>
  </cfif>

<cfelse> 
  <cfset LocalName="Madison">
  <cfset StateNo=1>
</cfif>

更新

我刚刚尝试了以下内容,它在我的HTML中运行良好:

<cfif isdefined("URL.COUNTY") is "true">
  <p class="reportHeader_fontSemiBig">
    <cfoutput>#CountyName#</cfoutput> Property Codes
  </p>
<cfelse>
  <p>No county info</p>
</cfif>

3 个答案:

答案 0 :(得分:4)

这与现有答案类似,但我会稍微解释一下。

isDefined("url.county")只检查网址范围内是否存在密钥county。它不会检查是否存在值。在ColdFusion中,您可以删除is truegt 0进行评估,只需检查密钥是否存在以及密钥的长度。如果它是所有空格,则返回false。

<cfif isdefined("URL.COUNTY") AND len(trim(url.county))>
  <p class="reportHeader_fontSemiBig">
    <cfoutput>#CountyName#</cfoutput> Property Codes
  </p>
<cfelse>
  <p>No county info</p>
</cfif>

早期版本的ColdFusion isDefined()曾经很慢,但情况已经不是这样了,但按照最佳做法我会建议使用structKeyExists(url, 'County')代替isDefined("url.county")

答案 1 :(得分:2)

我认为你在寻找:

<cfif isdefined("url.county") and url.county NEQ ''>
<p class="reportHeader_fontSemiBig">
<cfoutput>#CountyName#</cfoutput> Property Codes </p>
<cfelse>
<p>No county info</p>
</cfif>

答案 2 :(得分:0)

<cfif isdefined("url.county") and url.county NEQ ''>
<p>
<cfoutput>#url.County#</cfoutput> Property Codes </p>
<cfelse>
<p>No county info</p>
</cfif>