是否可以使用查询结果填充下拉列表?例如,使用此输出:Peps Company - AL
即(公司和州)用连字符分隔。
编辑:抱歉遗漏代码。只有一个数据源。
<cfquery name="CompanyInfo" datasource=>
SELECT company, state
FROM clients
WHERE serv_billing = 1
AND status = 'Active'
ORDER BY Company
</cfquery>
<FORM METHOD="POST" ACTION="nextpage.cfm">
<SELECT name="company">
<CFOUTPUT QUERY="CompanyInfo">
<OPTION value="#CompanyInfo.company#">#CompanyInfo.company# - #CompanyInfo.state#</OPTION>
</CFOUTPUT>
</SELECT>
<INPUT TYPE="submit" VALUE="Submit Company">
</FORM>
此代码是否会为我提供所需的下拉列表项格式,即Peps - AL
?
答案 0 :(得分:2)
答案是肯定的。这段代码就是这样做的。
不起作用吗?你有问题,还是..?我觉得很奇怪,你不是简单地尝试一下,因为你似乎已经有代码去做你想做的事。
答案 1 :(得分:1)
Seybsen的答案在技术上是正确的,但是,我会强迫您遵循最佳实践并执行单个循环,而不是在主查询的每一行结果上迭代返回数据库:
<CFQUERY name="qCompanies" datasource="yourdsn">
SELECT companies.id, companies.company, states.state_code
FROM companies
INNER JOIN states ON (companies.state_id = states.state_id)
</CFQUERY>
<SELECT name="company">
<CFOUTPUT QUERY="qCompanies">
<OPTION value="#qCompanies.id#">#qCompanies.company# - #qCompanies.state_code#</OPTION>
</CFOUTPUT>
</SELECT>
答案 2 :(得分:1)
您可以使用cfloop这样做:
<cfquery name="CompanyInfo" datasource="yourdsn">
SELECT company, state
FROM clients
WHERE serv_billing = 1 AND status = 'Active'
Order by Company
</cfquery>
<FORM METHOD="POST" ACTION="nextpage.cfm">
<SELECT name="company">
<CFLOOP QUERY="CompanyInfo">
<OPTION value="#CompanyInfo.company#">#CompanyInfo.company# - #CompanyInfo.state#</OPTION>
</CFLOOP>
</SELECT>
<INPUT TYPE="submit" VALUE="Submit Company">
</FORM>