我想要做的是如果pcount是= 0
<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>
然后每次循环
<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>
答案 0 :(得分:3)
这是一种格式化的注释,可帮助您了解代码出了什么问题。这个,
<cfif (isDefined("session.checkout.quantity.pcount")) eq 0>
不检查pcount的值。它实际上意味着,
if variable session.checkout.quantity.pcount does not exist
因为函数isDefined返回一个布尔值,true或false。但是,ColdFusion的工作方式,数字0,以及字符串,&#34; false&#34;,&#34; no&#34;,&#34; 0&#34;是假的。
答案 1 :(得分: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>