Bonjour à tous !
Je suis retraité et je travaille depuis plusieurs mois sur un gros projet.
En bon autodidacte, j'apprends, jour après jour, les astuces d'internet.
En ce moment, je coince car j'ai eu la chance de trouver un script d'une liste déroulante "modulée" qui correspondait à mes attentes.
Malheureusement, quand j'en mets deux sur la même page, il y en a une qui coince.
J'ai fait tous les forums sans trouver la solution.
Mais je suis persuadé qu'un génie verra en 2 secondes, le bug !
D'avance, je vous remercie infiniment pour que vous daignerez m'apporter.
Pépé.
Voici le code, "source" de mes soucis Lol
______________________________________________________________________________
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<title>Double liste</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
<!--
list_choix = {
//
"America" : ["Select", "North America", "Central America", "South America"],
"North America" : ["Select", "United States of America", "Canada", "AmericanSamoa", "VirginIslands(US)"],
"United States of America" : ["Select", "Alabama", "Alaska", "Arizona", "Arkansas", "California", "North Carolina", "South Carolina", "Colorado", "Connecticut", "North Dakota", "South Dakota", "Delaware", "District of Columbia", "Floride", "Géorgie", "Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", "Kentucky", "Louisiane", " Maine", "Maryland", "Massachusetts", "Michigan", "Minnesota", "Mississippi", "Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", "New Jersey", "New York", "Nouveau-Mexique", "Ohio", "Oklahoma", "Oregon", "Pennsylvanie", "Rhode Island", "Tennessee", "Texas", "Utah", "Vermont", "Virginie", "Virginie-Occidentale", "Washington", "Wisconsin", "Wyoming"],
"Canada" : ["Select", "Alberta", "Colombie-Britannique", "Île-du-Prince-Édouard" , "Ontario" , "Québec", "Manitoba", "Nouveau-Brunswick", "Nouvelle-Écosse", "Saskatchewan", "Terre-Neuve-et-Labrador", "Territoires du Nord-Ouest","Yukon"],
"Central America" : ["Select", "Antigua & Barbuda", "Bahamas", "Barbados", "Belize", "CostaRica", "Cuba", "Dominica", "ElSalvador", "Grenada", "Guatemala", "Haiti", "Honduras", "Jamaica", "Mexico", "Nicaragua", "Panama", "SaintKitts&Nevis", "SaintLucia", "SaintVincent", "Trinidad&Tobago"],
"South America" : ["Argentina", "Bolivia", "Brazil", "Chile", "Colombia", "Ecuador", "Guyana", "Paraguay", "Peru", "Suriname", "Uruguay", "Venezuela"],
//AFRICA
"Africa" : ["Select", "Algeria", "Angola", "Benin", "Botswana", "BurkinaFaso", "Burundi", "Cameroon", "CapeVerde", "CentralAR", "Chad", "Comoros", "Congo", "Djibouti", "Egypt", "EquatorialGuinea", "Eritrea", "Ethiopia", "Gabon", "Gambia", "Ghana", "Guinea", "Guinea-Bissau", "IvoryCoast", "Kenya", "Lesotho", "Liberia", "Libyan", "Madagascar", "Malawi", "Mali", "Mauritania", "Mauritius", "Morocco", "Mozambique", "Namibia", "Niger", "Nigeria", "Rwanda", "SaoTome&Principe", "Senegal", "Seychelles", "SierraLeone", "Somalia", "SouthAfrica", "Sudan", "Swaziland", "Tanzania", "Togo", "Tunisia", "Uganda", "Zaire", "Zambia", "Zimbabwe"],
//ASIA
"Asia" : ["Select", "Middle East", "South Asia"],
"Middle East" :["Afghanistan", "Bahrain", "Cyprus", "Iran", "Iraq", "Israel", "Jordan", "Kuwait", "Lebanon", "Oman", "Qatar", "SaudiArabia", "Syria", "Turkey", "UnitedArabEmirates", "Yemen"],
"South Asia" : ["Select", "Bangladesh", "Bhutan", "BruneiDarussalam", "Cambodia", "China", "HongKong", "India", "Indonesia", "Japan", "Korea", "Laos", "Malaysia", "Maldives", "Mongolia", "Myanmar", "Nepal", "Pakistan", "Philippines", "Singapore", "SriLanka", "Taiwan", "Thailand", "Vietnam"],
//EUROPE
"Europe" : ["Select", "Albania", "Andorra", "Armenia", "Austria", "Azerbaijan", "Belarus", "Belgium", "Bosnia&Herzegowina", "Bulgaria", "Croatia", "CzechRepublic", "Denmark", "Estonia", "Finland", "France", "Georgia", "Germany", "Greece", "Hungary", "Iceland", "Ireland", "Italy", "Kazakhstan", "Kyrgyzstan", "Latvia", "Liechtenstein", "Lithuania", "Luxembourg", "Macedonia", "Malta", "Moldova", "Monaco", "Netherlands", "Norway", "Poland", "Portugal", "Romania", "Russia", "SanMarino", "SerbiaandMontenegro", "Slovakia", "Slovenia", "Spain", "Sweden", "Switzerland", "Tajikistan", "Turkmenistan", "Ukraine", "UnitedKingdom", "Uzbekistan"],
//OCEANIA
"Oceania" : ["Select", "Australia", "Fiji", "Kiribati", "MarshallIslands", "Micronesia", "Nauru", "NewZealand", "Palau", "PapuaNewGuinea", "SolomonIslands", "Tonga", "Tuvalu", "Vanuatu"]
}
function ajout(selection){
nb_select = selection.parentNode.getElementsByTagName("select").length;
if ( selection == selection.parentNode.getElementsByTagName("select")[nb_select-1] ) {
element_select = selection;
selection = selection.options[selection.selectedIndex].value;
if ( list_choix[selection] ) {
new_liste = document.createElement("select");
element_select.parentNode.appendChild(new_liste);
new_liste.setAttribute("id", "choix"+nb_select);
new_liste.setAttribute("name", "choix"+nb_select);
new_liste.onchange= function () {ajout(this) };
for (var i=0; i<list_choix[selection].length; i++) {
new_option = document.createElement("option");
new_liste.appendChild(new_option);
new_option.setAttribute("value", list_choix[selection][i]);
new_option.text = list_choix[selection][i];
}
}
}
else {
selection.parentNode.removeChild(selection.nextSibling);
ajout(selection);
}
if (list_choix[new_liste.options[0].value]) {
ajout(new_liste)
}
}
function MM_CheckFlashVersion(reqVerStr,msg){
with(navigator){
var isIE = (appVersion.indexOf("MSIE") != -1 && userAgent.indexOf("Opera") == -1);
var isWin = (appVersion.toLowerCase().indexOf("win") != -1);
if (!isIE || !isWin){
var flashVer = -1;
if (plugins && plugins.length > 0){
var desc = plugins["Shockwave Flash"] ? plugins["Shockwave Flash"].description : "";
desc = plugins["Shockwave Flash 2.0"] ? plugins["Shockwave Flash 2.0"].description : desc;
if (desc == "") flashVer = -1;
else{
var descArr = desc.split(" ");
var tempArrMajor = descArr[2].split(".");
var verMajor = tempArrMajor[0];
var tempArrMinor = (descArr[3] != "") ? descArr[3].split("r") : descArr[4].split("r");
var verMinor = (tempArrMinor[1] > 0) ? tempArrMinor[1] : 0;
flashVer = parseFloat(verMajor + "." + verMinor);
}
}
// WebTV has Flash Player 4 or lower -- too low for video
else if (userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 4.0;
var verArr = reqVerStr.split(",");
var reqVer = parseFloat(verArr[0] + "." + verArr[2]);
if (flashVer < reqVer){
if (confirm(msg))
window.location = "http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";
}
}
}
}
//-->
</script>
<script type="text/javascript">
<!--
list_choix = {
//ART//
"Art" : ["Select", "Movie", "Theater", "Television", "Song", "Painting", "Sculpture"],
"Movie" : ["Select", "Actress", "Actor", "Director", "Theater director", "Photographer"],
"Television" : ["Journalist", "Reporter", "Showman"],
"Song" : ["Select", "Singer", "Musician", "Group"],
//TECHNOLOGIES//
"Technologies" : ["Select", "Sciences", "IT Technologies", "Space Technologies"],
"Sciences" : ["Select", "Professor", "Scientist", "Researcher"],
"Space Technologies" : ["Select", "Professor", "Scientist", "Researcher"],
"Professor" : ["Select", "Professor 1", "Professor 2", "Professor 3"],
"Scientist" : ["Select", "Scientist 1", "Scientist 2", "Scientist 3"],
"Researcher": ["Select", "Researcher 1", "Researcher 2", "Researcher 3"],
//SPORTS//
"Sports" : ["Select", "Athletics", "Baseball","Baskettball", "Car Racing", "Cyclying", "Equestrian", "Fencing", "Football", "Handball", "Hockey", "Judo", "Rugby", "Scocer", "Swimming", "Tennis"],
//ATHLETICS//
"Athletics" : ["Select", "100 m", "200 m","5.000 m", "10.000 m", "Marathon"],
}
function ajout(selection){
nb_select = selection.parentNode.getElementsByTagName("select").length;
if ( selection == selection.parentNode.getElementsByTagName("select")[nb_select-1] ) {
element_select = selection;
selection = selection.options[selection.selectedIndex].value;
if ( list_choix[selection] ) {
new_liste = document.createElement("select");
element_select.parentNode.appendChild(new_liste);
new_liste.setAttribute("id", "choix"+nb_select);
new_liste.setAttribute("name", "choix"+nb_select);
new_liste.onchange= function () {ajout(this) };
for (var i=0; i<list_choix[selection].length; i++) {
new_option = document.createElement("option");
new_liste.appendChild(new_option);
new_option.setAttribute("value", list_choix[selection][i]);
new_option.text = list_choix[selection][i];
}
}
}
else {
selection.parentNode.removeChild(selection.nextSibling);
ajout(selection);
}
if (list_choix[new_liste.options[0].value]) {
ajout(new_liste)
}
}
function MM_CheckFlashVersion(reqVerStr,msg){
with(navigator){
var isIE = (appVersion.indexOf("MSIE") != -1 && userAgent.indexOf("Opera") == -1);
var isWin = (appVersion.toLowerCase().indexOf("win") != -1);
if (!isIE || !isWin){
var flashVer = -1;
if (plugins && plugins.length > 0){
var desc = plugins["Shockwave Flash"] ? plugins["Shockwave Flash"].description : "";
desc = plugins["Shockwave Flash 2.0"] ? plugins["Shockwave Flash 2.0"].description : desc;
if (desc == "") flashVer = -1;
else{
var descArr = desc.split(" ");
var tempArrMajor = descArr[2].split(".");
var verMajor = tempArrMajor[0];
var tempArrMinor = (descArr[3] != "") ? descArr[3].split("r") : descArr[4].split("r");
var verMinor = (tempArrMinor[1] > 0) ? tempArrMinor[1] : 0;
flashVer = parseFloat(verMajor + "." + verMinor);
}
}
// WebTV has Flash Player 4 or lower -- too low for video
else if (userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 4.0;
var verArr = reqVerStr.split(",");
var reqVer = parseFloat(verArr[0] + "." + verArr[2]);
if (flashVer < reqVer){
if (confirm(msg))
window.location = "http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";
}
}
}
}
//----------------------------------> CATEGORY <------------------------------------//-->
</script>
<style type="text/css">
<!--
body {
background-color: #FFFFFF;
}
.style18 {font-size: 15px; color: #0000FF; padding: 3px; font-family: Arial, Helvetica, sans-serif;}
-->
</style></head>
<body onload="ajout(document.getElementById('choix0'))">
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="20" colspan="4" align="left" class="Silver"><p align="left" class="style18">Select your living place :
</p> <div align="left"><span class="Silver">
<select name="choix0" id="choix0" onchange="ajout(this)">
<option value="Select">Select</option>
<option value="America">America</option>
<option value="Africa">Africa</option>
<option value="Asia">Asia</option>
<option value="Europe">Europe</option>
<option value="Oceania">Oceania</option>
</select>
</span></div>
<p><span class="style18">Select your catégory :: </span></p> <div align="right"></div></td>
</tr>
<tr>
<td width="45%">
<select name="choix" id="choix" onchange="ajout(this)">
<option value="Select">Select</option>
<option value="Art">Art</option>
<option value="Technologies">Technologies</option>
<option value="Sports">Sports</option>
</select></td>
</tr>
</table></td>
</body>
</html>