<cfset stateList = "Alabama,Alaska,Arizona, ..., Wyoming">
<cfset stateAbbrList = "AL,AK,AR, ..., WY">
<cfset stateAbbr = #ListGetAt("stateAbbrList",ListFind("stateList",form.state))#>
当form.state是Alabama时,我希望stateAbbrList为AL。但相反,我得到一个错误,说ListGetAt返回零。
我做错了什么?
答案 0 :(得分:5)
你需要从变量名称周围取引号;如果你使用引号,那么你需要用#符号包装。
<cfset stateAbbr = ListGetAt(stateAbbrList, ListFind(stateList, form.state)) />
OR
<cfset stateAbbr = ListGetAt("#stateAbbrList#", ListFind("#stateList#", form.state)) />
我要补充一点,我认为这不是一个好方法。更好的方法是使用struct
或创建查询。
<cfset stateStruct = { "AL" = "Alamaba", ..., "WY" = "Wyoming" } />