我目前正致力于为员工鉴赏奖网络应用添加功能的ColdFusion(CF)项目。
我遇到的问题是如何在返回选择它的网页时保留cfselect值。
目前nomination.cfm使用子部门名称填充#1下拉菜单,并从nomination.cfc cffunction getDept调用。一旦选择了那么,然后"部门"传递给nomination.cfc cffunction getEmp作为cfargument。
1. Select the location where your nominee works:
<cfselect name="department" bind="cfc:nominee.getDept ()" bindonload="true" />
2. Select the nominee from the list below
<cfselect name="employee" bind="cfc:nominee.getEmp ({department})" />
所有这些代码都在cfform中,提交给summary.cfm。在summary.cfm中,有一个编辑按钮,可以返回nomination.cfm。我用了
<input type="button" value=" Edit " onclick="history.go(-1);">
但是#1和#2没有保留其选定的值,而是默认为原始下拉菜单列表。我在文档中读到cfc绑定不能做&#34;选择&#34;,所以我不知所措。在此先感谢您的帮助!!
以下是nomination.cfc代码:
<!--- Get array of media types --->
<cffunction name="getDept" access="remote" returnType="array">
<!--- Define variables --->
<cfset var data="">
<cfset var result=ArrayNew(2)>
<cfset var i=0>
<!--- Get data --->
<cfquery name="data" datasource="HatsOff">
SELECT account_number, account_title
FROM departments
<cfif session.vdept is not "All" and session.vdept is not "Letter">
WHERE [departmentname] = '#session.vdept#'
</cfif>
ORDER BY account_title
</cfquery>
<!--- Convert results to array --->
<cfloop index="i" from="1" to="#data.RecordCount#">
<cfset result[i][1]=data.account_number[i]>
<cfset result[i][2]=data.account_title[i]>
</cfloop>
<!--- And return it --->
<cfreturn result>
</cffunction>
<!--- Get art by media type --->
<cffunction name="getEmp" access="remote" returnType="array">
<cfargument name="department" type="string" required="true">
<!--- Define variables --->
<cfset var data="">
<cfset var result=ArrayNew(2)>
<cfset var i=0>
<!--- Get data --->
<cfquery name="data" datasource="HatsOff">
SELECT emp_id, emp_full_name
FROM employees
WHERE account_number = '#ARGUMENTS.department#'
ORDER BY emp_full_name
</cfquery>
<!--- Convert results to array --->
<cfloop index="i" from="1" to="#data.RecordCount#">
<cfset result[i][1]=data.emp_id[i]>
<cfset result[i][2]=data.emp_full_name[i]>
</cfloop>
<!--- And return it --->
<cfreturn result>
</cffunction>
</cfcomponent>
答案 0 :(得分:0)
我的ColdFusion版本为11,0,15,311399。
在cfc绑定中,“ selected”属性对我有用,如下所示:
<cfselect selected="#Value#" name="Access_Level_Code_New"
size="1"
bind="cfc: APP_CFC.Example.GetAccessLevelSetRemote({Business_Area_Code_New},{System_Function_Code_New})"
bindonload="yes"
>
我认为它也应适用于较新的ColdFusion版本。