09. april 2007 - 11:53Der er
8 kommentarer og 1 løsning
Mangler id i array
Jeg benytter dette script, som jeg fandt et sted her på eksperten - jeg har dog brug for nogle ændringer.
Jeg har to checkboxes, hvor den anden er afhængig af valget i den første. Det virker fint, men value i 2. checkbox er et navn - og jeg mangler et id, dvs. forskel på value og titel i checkboxen. Er der nogle, som kan hjælpe med at få denne med?
Jeg vil f.eks. gerne få: Checkbox1: Titel=Windows 95, Value=1 Checkbox2: Titel=Win95-ver3, Value= $id
Yderligere vil jeg helst undgå at Windows95 skal være ID 1. Kunne scriptet laves sådan, at values i checkbox 1 kunne være et hvilket som helst ID fra en tabel, og at array i checkbox 2 virkede alligevel.
Jeg har i databasen 2 tabeller, og skal have hentet resultater ud fra tabel2, som hører til posten i tabel1.
---------------------
i <head> <script type="text/javascript"> var models = new Array(); models[models.length] = ["win95-ver1","win95-ver2","win95-ver3","win95-ver4"]; // Windows 95 models[models.length] = ["98-version1"]; // Windows 98 models[models.length] = ["nt-version1"]; // Windows NT models[models.length] = ["2000-ver1"]; // Windows 2000 models[models.length] = ["me-ver1"]; // Windows ME models[models.length] = ["xp-ver1"]; // Windows XP models[models.length] = ["xp64-ver1","xp64-ver2"]; // Windows XP - 64bit
function showModels(elm) { //document.getElementById('lastGroup').style.display="none"; var sel = elm.form.version; if(elm.selectedIndex==0) { sel.style.display = 'none'; }else { sel.length = 1; var arrNum = elm.selectedIndex-1; for(i=0;models[arrNum].length>i;i++){ sel.options[sel.length] = new Option(models[arrNum][i]); sel.style.display = 'inline'; } } } </script>
<div id="nextGroup" style="display:none;"> Hvilken version har du: <br/> <br/> <select name="version"> <option value="">-- Vælg her --</option> </select>
Tjah, min har den opygning fordi den skal være nem at gå til, når man trækker ud af en database ...
-- og det, du henviser til, ser bestemt ikke ud til at være skrevet i forgårs, og en rigtig underlighed er, at der simpelthen er noget rigtig dårlig kode i, samtidig med at der blandes en mulighed fra en ret ny javascript-version sammen med en adressering, der var den eneste mulighed i de allerældste versioner, men hurtigt blev meget lettere at udføre ...
-- og det er fint, hvis du synes, den er mere logisk opbygget, men jeg ville altså kalde det skodkode, der ikke burde kunne publiceres i dette årtusind !-)
Du har garanteret ret, jeg kunne bare ikke få din tilføjelse til at virke - lige nu virker scriptet fra about.com dog, selvom du har ret i, at din ville have været mindre omstændig at integrere i f.eks. mit php-script.
<script language="javascript" type="text/javascript"> var models = new Array(); models["Win95ID"] = {"win95-1":"win95-ver1","win95-2":"win95-ver2","win95-3":"win95-ver3","win95-4":"win95-ver4"}; // Windows 95 models["Win98ID"] = {"win98-1":"win98-ver1","win98-2":"win98-ver2","win98-3":"win98-ver3","win98-4":"win98-ver4"}; // Windows 98
function showModels(elm){ var sel = elm.form.select2; if(elm.selectedIndex==0){ sel.style.display = 'none'; }else{ sel.length = 1; var arrId = elm.value; for(obj in models[arrId]){ sel.options[sel.length] = new Option(models[arrId][obj],obj); } sel.style.display = 'inline'; }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.