ColdFusion如果语句值没有返回true,而是返回false

问题描述:

在我的代码中,我正在查询我的数据库以获取城市。ColdFusion如果语句值没有返回true,而是返回false

我写了一条if语句,说明这个城市是否等于db中的那个值。返回这个城市的形象。但是,它正在返回一个不同的图像,它将转到我的if语句的错误块。

我做了一个城市变量的cfdump,它返回了我想要的城市,但由于某种原因,它返回的是错误而不是真实的。我不确定我做错了什么。这是我的代码。

<cfloop query="testData"> 
    <cfif #city# EQ 'Portland'> 
     <!--- I want it to go to this block ---> 
     <img src="images/portlandcity.jpg" alt="Portland City"> 
    <cfelseif #city# EQ 'San Jose'> 
     <img src="images/sanjosecity.jpg alt="San Jose City"> 
    <cfelse> 
     <!-- its going to this block instead of going to my Portland city block. ---> 
     <img src="images/randomcityimage.jpg alt="False block"> 
    </cfif> 

    <!-- Dumped out city variable in the loop and it returns 'Portland'. 
     However, it's going to the false block for some reason and I am not sure why ---> 
    <cfdump var="#city#"> 
</cfloop> 
+1

它的价值可能并不完全等于'波特兰'。 –

+0

虽然。我做了一个城市变量的cfdump,并且它完全返回'Portland' – Curious13

+4

没有多余的空格?标签?回报?不可见的角色,你不会看到在转储? –

你可以尝试在你的代码下面,以防止空间的项目:

注意我拿出#在你的变量,并添加了TRIM()函数。 在If语句中,您不需要使用#号。

<cfif trim(city) EQ 'Portland'> 
    <img src="images/portlandcity.jpg" alt="Portland City"> <!--- I want it to go to this block ---> 
<cfelseif trim(city) EQ 'San Jose'> 
    <img src="images/sanjosecity.jpg alt="San Jose City"> 
<cfelse> 
    <img src="images/randomcityimage.jpg alt="False block"> <!-- its going to this block instead of going to my Portland city block. ---> 
</cfif>