2014-10-06 102 views
0

我所试图做的是,如果pcount是= 0麻烦if语句完全循环并没有完全循环

<cfif (isDefined("session.checkout.quantity.pcount")) eq 0> 

然后循环这一点,但跳过最后一个循环

<cfif BAdd NEQ session.checkout.quantity.bcount> 
     <cfinclude template="../../../ddl/bandor.cfm"> 

,如果pcount不等于0 (零是在一个下拉菜单不仅坯件的数量0)

<cfif (isDefined("session.checkout.quantity.pcount")) neq 0> 

然后循环该everytim e

<cfinclude template="../../../ddl/bandor.cfm"> 

这是完整的代码,如果任何人都可以告诉我我做错了什么?

<cfif (isDefined("session.checkout.quantity.pcount")) eq 0> 
    <cfif BAdd NEQ session.checkout.quantity.bcount> 
    <cfinclude template="../../../ddl/bandor.cfm"> 
    </cfif> 
</cfif> 
<cfif (isDefined("session.checkout.quantity.pcount")) neq 0> 
    <cfinclude template="../../../ddl/bandor.cfm"> 
</cfif> 

回答

2
<cfif structKeyExists(session.checkout.quantity, "pcount") AND session.checkout.quantity.pcount eq 0> 
    <cfif BAdd NEQ session.checkout.quantity.bcount> 
    <cfinclude template="../../../ddl/bandor.cfm"> 
    </cfif> 
<cfelse> 
    <cfinclude template="../../../ddl/bandor.cfm"> 
</cfif> 
3

这是一个格式化的注释,以帮助您了解了什么问题与您的代码。这,

<cfif (isDefined("session.checkout.quantity.pcount")) eq 0> 

不检查pcount的价值。它实际上的意思是,

if variable session.checkout.quantity.pcount does not exist 

这是因为函数isDefined返回一个布尔值,true或false。但是,ColdFusion的工作方式中,数字0以及字符串“false”,“no”和“0”被视为错误。