我正在尝试显示2张图片,如果符合以下条件,则跳过1张图片(<cfif myDir.name eq property_mainimage>
工作正常,然后继续下一张图片并显示下一张图片,直到我总共有2张图片但是当标准图像在第5行中说出时,循环显示3个图像,当标准图像是第1行时,它显示2个图像。
cfloop中似乎没有跳过行?
我已经尝试了<cfif counter gt 3 > <cfabort>
但它显示了标准图像的3幅图像大于3行。以下是我正在使用的...
<cfdirectory directory="C:\Domains\domain.com\wwwroot\uploads\images\#property_ID#\" filter="*.jpg" name="myDir" type="file" sort="datelastmodified">
<ul>
<cfset counter = 0>
<cfset endrowvalue = 3 >
<cfloop query="myDir" endRow="#endrowvalue#">
<cfset counter = counter +1 >
<li>
<cfif right(myDir.name,4) is ".jpg">
<cfif fileexists("C:\Domains\ domain.com\wwwroot\uploads\ images\#property_ID#\#left(mydir.name,len(myDir.name)-4)#.jpg")>
<cfif myDir.name eq property_mainimage>
DO NOT SHOW THIS IMAGE
<cfelse>
<cfset endrowvalue = 1 >
<cfset myDir.endRow = 1 >
test #endrowvalue#
test #counter# <img src="#request.root#uploads/images/#property_ID#/#myDir.name#" border="0" width="230px" style="margin-bottom:15px;" />
</cfif>
</cfif>
</cfif>
</li>
</cfloop>
</ul>
任何帮助都会非常感激。
答案 0 :(得分:2)
我会在你显示图像时使用计数器进行计数。一旦你到达2个图像显示突然出现。
<cfdirectory directory="C:\Domains\domain.com\wwwroot\uploads\images\#property_ID#\" filter="*.jpg" name="myDir" type="file" sort="datelastmodified">
<ul>
<cfset counter = 1>
<cfloop query="myDir">
<li>
<cfif right(myDir.name,4) is ".jpg">
<cfif fileexists("C:\Domains\ domain.com\wwwroot\uploads\ images\#property_ID#\#left(mydir.name,len(myDir.name)-4)#.jpg")>
<cfif myDir.name eq property_mainimage>
DO NOT SHOW THIS IMAGE
<cfelse>
<!--- image displayed increment coutner --->
<cfset counter++>
<img src="#request.root#uploads/images/#property_ID#/#myDir.name#" border="0" width="230px" style="margin-bottom:15px;" />
</cfif>
</cfif>
</cfif>
<cfif counter EQ 2>
<cfbreak>
</cfif>
</li>
</cfloop>
</ul>
答案 1 :(得分:0)
这是一种格式化的评论。你的代码有这个:
<cfset endrowvalue = 3 >
<cfloop query="myDir" endRow="#endrowvalue#">
<cfif myDir.name eq property_mainimage>
DO NOT SHOW THIS IMAGE
<cfelse>
<cfset endrowvalue = 1 >
您必须对其进行测试才能确定,但我怀疑cfloop标记的endRow属性将继续为3,即使您将endrowvalue变量的值更改为1。
这可能不是您当前问题的原因,但是,我的怀疑是正确的,您将在其他地方遇到问题或者您正在运行无意义的命令。