I just did this!
Put this in the HEAD of your page:
<SCRIPT LANGUAGE="JavaScript1.1">
var maxlength = 10;
OneA = new Array;
var trueLength = OneA.length;
var lst = OneA.length;
function FormXChangeMenu(j) {
OneA.length = 0;
strclient = "document.FormX.ClientID" + j +
".selectedIndex"
menuNum = eval(strclient);
if (menuNum == null) return;
<CFINCLUDE TEMPLATE="app_Globals.cfm">
<CFQUERY NAME="GetClients"
DATASOURCE="#DSN#"
DBTYPE="ODBC"
USERNAME="#DBUSER#"
PASSWORD="#DBPASS#">
SELECT ClientID, ClientName FROM Clients
</CFQUERY>
<CFLOOP INDEX="icount" FROM="1" TO="#GetClients.RecordCount#">
<CFSET jcount=icount+1>
<CFOUTPUT>
if (menuNum == #icount#){
NewOpt = new Array;
NewVal = new Array;
<CFQUERY NAME="GetClientsAndTasks"
DATASOURCE="#DSN#"
DBTYPE="ODBC"
USERNAME="#DBUSER#"
PASSWORD="#DBPASS#">
SELECT Clients.ClientID AS Clients_ClientID,
Clients.ClientName, Tasks.TaskID, Tasks.ClientID AS Tasks_ClientID,
Tasks.TaskName
FROM Clients
INNER JOIN Tasks ON Clients.ClientID = Tasks.ClientID
WHERE Clients.ClientID=#icount#
ORDER BY Clients.ClientName
</CFQUERY>
<CFSET thiscount=#GetClientsAndTasks.RecordCount#-1>
<CFLOOP INDEX="tcount" FROM="0" TO="#thiscount#">
NewOpt[0] = new Option("Select a task");
NewOpt[0].value = '';
</CFLOOP>
</CFOUTPUT>
<CFSET taskcount=0>
<CFOUTPUT QUERY="GetClientsAndTasks">
<CFSET taskcount=#taskcount#+1>
NewOpt[#taskcount#] = new
Option("#GetClientsAndTasks.TaskName#");
NewOpt[#taskcount#].value = '#GetClientsAndTasks.TaskID#';
</CFOUTPUT>
}
</CFLOOP>
tot = NewOpt.length;
str1st = "document.FormX.TaskID" + j + ".options.length";
lst = eval(str1st);
for (i = lst; i > 0; i--) {
strtemp1 = "document.FormX.TaskID" + j + ".options[i]= null";
eval(strtemp1);
}
for (i = 0; i < tot; i++) {
strtemp1 = "document.FormX.TaskID" + j + ".options[i] = NewOpt[i]";
eval(strtemp1);
}
strtemp1 = "document.FormX.TaskID" + j + ".options[0].selected =
true";
eval(strtemp1);
}
</SCRIPT>
And this is what I put in the body:
<CFLOOP INDEX="icount" FROM="1" TO="5">
<TR>
<TD>
<CFOUTPUT>
<SELECT NAME="ClientID#icount#" onChange="FormXChangeMenu(#icount#)"
SIZE="1" >
</CFOUTPUT>
<OPTION VALUE="">Select a client
<CFOUTPUT QUERY="GetClients">
<OPTION VALUE="#ClientID#">#ClientName#
</CFOUTPUT>
</SELECT>
<CFOUTPUT><SELECT NAME="TaskID#icount#" SIZE="1">
<OPTION VALUE="">Select a task
</SELECT></CFOUTPUT>
<BR>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="SunHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="MonHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="TueHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="WedHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="ThuHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="FriHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
<TD>
<CFOUTPUT>
<SELECT NAME="SatHours#icount#">
</CFOUTPUT>
<OPTION VALUE="0">Hrs
<CFOUTPUT QUERY="GetHours">
<OPTION
VALUE="#Hours#">#Hours#
</CFOUTPUT>
</SELECT>
</TD>
</TR>
</CFLOOP>
-----Original Message-----
From: David E. Crawford [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, September 05, 2000 8:49 AM
To: CF-Talk
Subject: TwoSelectsRelated Hack
Has anyone hacked CF_TWOSELECTSRELATED to allow more than one instance of
the tag to be used on the same form?
Dave
-------
David E. Crawford
Director, Internet Development
Yale Security Group, Inc.
----------------------------------------------------------------------------
--
Archives: http://www.mail-archive.com/[email protected]/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.
------------------------------------------------------------------------------
Archives: http://www.mail-archive.com/[email protected]/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or send a
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.