下载ColdFusion 9中的列表

时间:2012-04-03 17:06:25

标签: coldfusion drop-down-menu coldfusion-9

我正在尝试创建一个同时包含数据库数据和自定义循环的下拉列表。我需要列表显示“选择”来自数据库的数据,但也允许用户在需要时使用列表中的其他数据更改它。

更具体地说,这是我到目前为止所做的:

<select name="openHours#CountVar#">
    <cfloop from="0" to="23" index="OpenHours">  
        <option value="#OpenHours#"><cfif doctorHours.openTime neq ''>#TimeFormat(doctorHours.openTime)#<cfelse>#OpenHours#</cfif></option>
    </cfloop>
</select>

此代码的问题是当实际从数据库中提取值时,其余值选项正在消失,因为#OpenHours#已被隔离且我只能拥有其中一个。此值也应该是动态的,以便在更新时获得正确的值。

我可以加入这部分

<cfif doctorHours.openTime neq ''>
    #TimeFormat(doctorHours.openTime)#
 <cfelse>
     #OpenHours#
 </cfif>

..在某个“选定”选项中,为了在我的下拉列表中显示正确的值,并且能够按下列表并选择其他选项以在需要时更新我的​​时间表?

添加更多关于我需要的信息:

我有一个包含3列的数据库表。 ID,openHours和closeHours。 我想要实现的是: 创建一个从0到23小时的下拉列表。然后检查我的数据库,如果openHours和closeHours不为空,请获取这些值并将它们作为预选值放在下拉列表中。 如果我的医生在上午9点开门并在下午6点关门,那么两个下拉列表将选择09和18,如果我想更新它们,也允许我选择其他选项。 所以我想我需要检查我的数据库表,如果我的数据与下拉列表中的任何数据匹配,请将该选择作为选中的。

希望现在更有意义。 :)

3 个答案:

答案 0 :(得分:4)

<select name="openHours#CountVar#">
    <cfloop from="0" to="23" index="OpenHours">  
        <option value="#OpenHours#"<cfif TimeFormat(doctorHours.openTime,'H') EQ    OpenHours> selected="selected"</cfif>>#OpenHours#</option>
    </cfloop>
</select>

这应该可以满足您的需求。它循环遍历列表0到23并显示每个列表。如果显示的值与doctorHours.openTime匹配,则它将显示为已选择。

答案 1 :(得分:3)

我认为这可能就是你所需要的。

<option value="#OpenHours#" <cfif doctorHours.openTime EQ OpenHours>selected="selected"</cfif> >#openHours#</option>

答案 2 :(得分:1)

这是你要找的吗?

<select name="openHours#CountVar#">
    <cfoutput query="doctorHours">
       <cfif doctorHours.openTime neq ''>
          <option name="#TimeFormat(doctorHours.openTime)#">#TimeFormat(doctorHours.openTime)#</option>
       </cfif>
    </cfoutput>
</select>