Cloloop里面的cfloop?

时间:2015-12-09 15:51:47

标签: coldfusion cfloop

我对另一个cfloop中的cfloop有疑问。这是我的代码:

    09:00 AM - 09:15 AM
    09:15 AM - 09:30 AM
    09:30 AM - 09:45 AM
    09:45 AM - 10:00 AM
   *10:00 AM - 09:15 AM
    09:15 AM - 09:30 AM
    09:30 AM - 09:45 AM
    09:45 AM - 10:00 AM
   *10:00 AM - 09:15 AM
    09:15 AM - 09:30 AM
    09:30 AM - 09:45 AM
    09:45 AM - 10:00 AM
   *10:00 AM - 09:15 AM
    09:15 AM - 09:30 AM
    09:30 AM - 09:45 AM
    09:45 AM - 10:00 AM
   *10:00 AM - 09:15 AM
    09:15 AM - 09:30 AM
    09:30 AM - 09:45 AM
    09:45 AM - 10:00 AM

上面的代码给出了这样的输出:

if (dow.addEventListener) {
  dow.addEventListener('click', thefunction, false);
} else if (dow.attachEvent) {
  dow.attachEvent('onclick', thefunction);
} else {
  dow.onclick = thefunction; 
}

正如你所看到的,我把星号放在我的代码给我错误值的行旁边。由于某种原因,我在第一次循环后的开始时间完成一次,从结束时间开始。谁能告诉我这是如何解决的?

1 个答案:

答案 0 :(得分:3)

您不能使用“i”作为外循环和内循环的索引。使用其他内容循环(x)。例如:

<cfloop from="1" to="5" index="i">
    <cfloop from="#qry.S#" to="#qry.E#" index="x" step="#CreateTimeSpan(0,0,qry.Leng,0)#">
        <cfset TimeEnd = dateAdd("n", Leng, i)>
            <tr>
                <td> #timeFormat(TimeStart, "hh:mm tt")# - #timeFormat(TimeEnd, "hh:mm tt")#</td>
            </tr>
        <cfset TimeStart = dateAdd("n", qry.Leng, i)>           
    </cfloop>   
</cfloop>

我不确定这里的意图,所以你可能需要在内循环中交换你的一些我的x,取决于你所追求的(例如,起始端)。

***************************编辑****************

也许我看到了您的问题(不确定),但根据您的评论,您的问题将是您重置了timestart var。在第一次循环开始后,您需要这样做。

<cfloop> outer loop
    <Cfset timestart = *starting value*>
      <cfloop> inner looop

另外,你的时间启动将是你内容循环中的最后一次cfset。