<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2712.300" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial size=2>Firstly, Happy New Year to all!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Now on to the fun stuff!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>This is a different twist on the issue I mailed 
about last year! ;-)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>I now have the dropdown's initially written by ASP. 
Then, when a user selects a value of the first of three drop downs, the second 
ammends itself accordingly; then when they choose from that modified second 
dropdown, the third is set to specific values! I'm sure many of you have seen 
this type of thing, but I will add the full code to the end of this 
email!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>My question is this:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>The drop downs are populated by a specific listing 
of variables&nbsp; depending on the choice of the first dropdown, but all 
varaibles are repeated at one time or another, maybe more.&nbsp; And the last 
menu choices are the same for most of the second set of options, with only a few 
needing modification upon selection.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Is there a way to not have to write the same option 
variables for each of the six initial options, and can I have only the second 
sets of options that would modif the third list only do just that?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Please take a look at this code and see what you 
think!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Thanks in advance,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Jon</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;!code snippett&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&lt;head&gt;</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&lt;script language="JavaScript"&gt;<BR>&lt;!-- 
Begin<BR>var f = "Fighter";<BR>var p = "Paladin";<BR>var r = "Ranger";<BR>var m 
= "Mage";<BR>var c = "Cleric";<BR>var d = "Druid";<BR>var l = 
"Illusionist";<BR>var t = "Thief";<BR>var b = "Bard";<BR>var ft = 
"Fighter/Thief";<BR>var fm = "Fighter/Mage";<BR>var fc = 
"Fighter/Cleric";<BR>var fd = "Fighter/Druid";<BR>var fl = 
"Fighter/Illusionist";<BR>var mt = "Mage/Thief";<BR>var lc = 
"Illusionist/Cleric";<BR>var lt = "Illusionist/Thief";<BR>var dm = 
"Druid/Mage";<BR>var dr = "Druid/Ranger";<BR>var cr = "Cleric/Ranger";<BR>var cm 
= "Cleric/Mage";<BR>var fmt = "Fighter/Mage/Thief";<BR>var fdm = 
"Fighter/Druid/Mage";<BR>var fmc = "Fighter/Mage/Cleric";</FONT></DIV>
<DIV>&nbsp;</DIV><FONT face=Arial size=2>
<DIV><BR>var ac1 = new Array();<BR>var aa1 = new Array();</DIV>
<DIV>&nbsp;</DIV>
<DIV>//--human classes<BR>ac1[1] = f; aa1[1] = 1;<BR>ac1[2] = p; aa1[2] = 
1;<BR>ac1[3] = r; aa1[3] = 1;<BR>ac1[4] = m; aa1[4] = 1;<BR>ac1[5] = c; aa1[5] = 
1;<BR>ac1[6] = d; aa1[6] = 1;<BR>ac1[7] = t; aa1[7] = 1;<BR>ac1[8] = b; aa1[8] = 
1;<BR>ac1[9] = ft; aa1[9] = 1;<BR>ac1[10] = fm; aa1[10] = 1;<BR>ac1[11] = fc; 
aa1[11] = 1;<BR>ac1[12] = fd; aa1[12] = 1;<BR>ac1[13] = mt; aa1[13] = 
1;<BR>ac1[14] = cr; aa1[14] = 1;<BR>ac1[15] = cm; aa1[15] = 1;<BR>ac1[16] = fmt; 
aa1[16] = 1;<BR>ac1[17] = fmc; aa1[17] = 1;</DIV>
<DIV>&nbsp;</DIV>
<DIV>//--dwarf classes<BR>ac1[20] = f; aa1[20] = 2;<BR>ac1[21] = c; aa1[21] = 
2;<BR>ac1[22] = t; aa1[22] = 2;<BR>ac1[23] = ft; aa1[23] = 2;<BR>ac1[24] = fc; 
aa1[24] = 2;</DIV>
<DIV>&nbsp;</DIV>
<DIV>//--elfen classes<BR>ac1[30] = f; aa1[30] = 3;<BR>ac1[31] = c; aa1[31] = 
3;<BR>ac1[32] = r; aa1[32] = 3;<BR>ac1[33] = m; aa1[33] = 3;<BR>ac1[34] = t; 
aa1[34] = 3;<BR>ac1[35] = fm; aa1[35] = 3;<BR>ac1[36] = ft; aa1[36] = 
3;<BR>ac1[37] = fmt; aa1[37] = 3;<BR>ac1[38] = mt; aa1[38] = 3;</DIV>
<DIV>&nbsp;</DIV>
<DIV>//--gnome classes<BR>ac1[40] = f; aa1[40] = 4;<BR>ac1[41] = c; aa1[41] = 
4;<BR>ac1[42] = l; aa1[42] = 4;<BR>ac1[43] = t; aa1[43] = 4;<BR>ac1[44] = ft; 
aa1[44] = 4;<BR>ac1[45] = lc; aa1[45] = 4;</DIV>
<DIV>&nbsp;</DIV>
<DIV>//--Half-Elf classes<BR>ac1[50] = f; aa1[50] = 5;<BR>ac1[51] = r; aa1[51] = 
5;<BR>ac1[52] = m; aa1[52] = 5;<BR>ac1[53] = c; aa1[53] = 5;<BR>ac1[54] = d; 
aa1[54] = 5;<BR>ac1[55] = t; aa1[55] = 5;<BR>ac1[56] = b; aa1[56] = 
5;<BR>ac1[57] = fc; aa1[57] = 5;<BR>ac1[58] = cr; aa1[58] = 5;<BR>ac1[59] = fd; 
aa1[59] = 5;<BR>ac1[60] = dr; aa1[60] = 5;<BR>ac1[61] = cm; aa1[61] = 
5;<BR>ac1[62] = dm; aa1[62] = 5;<BR>ac1[63] = fmc; aa1[63] = 5;<BR>ac1[64] = 
fdm; aa1[64] = 5;<BR>ac1[65] = fm; aa1[65] = 5;<BR>ac1[66] = ft; aa1[66] = 
5;<BR>ac1[67] = fmt; aa1[67] = 5;<BR>ac1[68] = mt; aa1[68] = 5;</DIV>
<DIV>&nbsp;</DIV>
<DIV>//-- halfling classes<BR>ac1[70] = f; aa1[70] = 6;<BR>ac1[71] = c; aa1[71] 
= 6;<BR>ac1[72] = t; aa1[72] = 6;<BR>ac1[73] = ft; aa1[73] = 6;</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>//-- alignment assignments<BR>var lg = "Lawful Good";<BR>var ln = 
"Lawful Neutral";<BR>var le = "Lawful Evil";<BR>var ng = "Neutral Good";<BR>var 
tn = "True Neutral";<BR>var ne = "Neutral Evil";<BR>var cg = "Chaotic 
Good";<BR>var cn = "Chaotic Neutral";<BR>var ce = "Chaotic Evil";</DIV>
<DIV>&nbsp;</DIV>
<DIV>var ac2 = new Array();<BR>var aa2 = new Array();</DIV>
<DIV>&nbsp;</DIV>
<DIV>ac2[100] = lg; aa2[100] = 1;<BR>ac2[101] = ln; aa2[101] = 1;<BR>ac2[102] = 
le; aa2[102] = 1;<BR>ac2[103] = ng; aa2[103] = 1;<BR>ac2[104] = tn; aa2[104] = 
1;<BR>ac2[105] = ne; aa2[105] = 1;<BR>ac2[106] = cg; aa2[106] = 1;<BR>ac2[107] = 
cn; aa2[107] = 1;<BR>ac2[108] = ce; aa2[108] = 1;</DIV>
<DIV>&nbsp;</DIV>
<DIV>ac2[200] = lg; aa2[200] = 2;</DIV>
<DIV>&nbsp;</DIV>
<DIV>ac2[300] = lg; aa2[300] = 3;<BR>ac2[301] = ng; aa2[301] = 3;<BR>ac2[302] = 
cg; aa2[302] = 3;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>function selectChange(control, controlToPopulate, ItemArray, 
GroupArray)<BR>{<BR>&nbsp; var myEle;<BR>&nbsp; var x;<BR>&nbsp; // Empty the 
second drop down box of any choices<BR>&nbsp; for (var 
q=controlToPopulate.options.length; q&gt;=0; q--) 
controlToPopulate.options[q]=null;<BR>&nbsp; <BR>&nbsp; if (control.name == 
"secondChoice") {<BR>&nbsp;&nbsp;&nbsp; // Empty the third drop down box of any 
choices<BR>&nbsp;&nbsp;&nbsp; for (var q=myChoices.thirdChoice.options.length; 
q&gt;=0; q--) myChoices.thirdChoice.options[q] = null;<BR>&nbsp;}<BR>&nbsp; // 
ADD Default Choice - in case there are no values<BR>&nbsp; myEle = 
document.createElement("option") ;<BR>&nbsp; myEle.value = 0 ;<BR>&nbsp; 
myEle.text = "&lt;--Please Select One--&gt;" ;<BR>&nbsp; 
controlToPopulate.add(myEle) ;<BR>&nbsp; // Now loop through the array of 
individual items<BR>&nbsp; // Any containing the same child id are added 
to<BR>&nbsp; // the second dropdown box<BR>&nbsp; for ( x = 0 ; x &lt; 
ItemArray.length&nbsp; ; x++ )<BR>&nbsp;&nbsp;&nbsp; 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( GroupArray[x] == control.value 
)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myEle = 
document.createElement("option") 
;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myEle.value = x 
;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myEle.text = 
ItemArray[x] ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
controlToPopulate.add(myEle) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
}<BR>&nbsp;&nbsp;&nbsp; }<BR>}<BR>//&nbsp; End --&gt;<BR>&lt;/script&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&lt;/head&gt;<BR>&lt;body&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&lt;form action="" name="myChoices" id="myChoices"&gt;<BR>&lt;table 
align="center"&gt;<BR>&nbsp;&lt;tr&gt;<BR>&nbsp; &lt;td&gt;<BR>&nbsp;&nbsp; 
&lt;select name="firstChoice" id="firstChoice" onChange="selectChange(this, 
myChoices.secondChoice, ac1, aa1);"&gt;<BR>&nbsp;&nbsp; &lt;option value="0" 
selected&gt;&lt;--Please Select One--&gt;&lt;/option&gt;<BR>&nbsp;&nbsp; 
&lt;option value='1'&gt;Human&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='2'&gt;Dwarf&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='3'&gt;Elf&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='4'&gt;Gnome&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='5'&gt;Half-Elf&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='6'&gt;Halfling&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;/select&gt;<BR>&nbsp; 
&lt;/td&gt;<BR>&nbsp;&lt;/tr&gt;<BR>&nbsp;&lt;tr&gt;<BR>&nbsp; 
&lt;td&gt;<BR>&nbsp;&nbsp; &lt;select name="secondChoice" id="secondChoice" 
onChange="alert(this.value);selectChange(this, myChoices.thirdChoice,ac2, aa2); 
"&gt;&lt;!-- --&gt;<BR>&nbsp;&nbsp; &lt;option value="100" 
selected&gt;&lt;--Please Select One--&gt;&lt;/option&gt;<BR>&nbsp;&nbsp; 
&lt;option value='101'&gt;Fighter&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='102'&gt;Paladin&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='103'&gt;Ranger&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='104'&gt;Mage&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='105'&gt;Cleric&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='106'&gt;Druid&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='107'&gt;Thief&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='108'&gt;Bard&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='109'&gt;Multi-Classed&lt;/option&gt;<BR>&nbsp;&nbsp; 
&lt;/select&gt;<BR>&nbsp; 
&lt;/td&gt;<BR>&nbsp;&lt;/tr&gt;<BR>&nbsp;&lt;tr&gt;<BR>&nbsp; 
&lt;td&gt;<BR>&nbsp;&nbsp; &lt;select name="thirdChoice" id="thirdChoice" 
onChange="alert(this.value);"&gt;<BR>&nbsp;&nbsp; &lt;option value="200" 
selected&gt;&lt;--Please Select One--&gt;&lt;/option&gt;<BR>&nbsp;&nbsp; 
&lt;option value='201'&gt;Lawful Good&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='202'&gt;Lawful Neutral&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='203'&gt;Lawful Evil&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='204'&gt;Neutral Good&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='205'&gt;True Neutral&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='206'&gt;Neutral Evil&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='207'&gt;Chaotic Good&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='208'&gt;Chaotic Neutral&lt;/option&gt;<BR>&nbsp;&nbsp; &lt;option 
value='209'&gt;Chaotic Evil&lt;/option&gt;<BR>&nbsp;&nbsp; 
&lt;/select&gt;<BR>&nbsp; 
&lt;/td&gt;<BR>&nbsp;&lt;/tr&gt;<BR>&lt;/table&gt;<BR>&lt;/form&gt;<BR>&lt;/body&gt;<BR>&lt;/html&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&lt;/code snippett!&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>" Art must take reality by surprise. " 
</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Frantoise 
Sagan</FONT></DIV></FONT></DIV></BODY></HTML>