Avatar billede learner Praktikant
04. december 2004 - 15:54 Der er 9 kommentarer og
1 løsning

Jeg mangler et Script der kopierer fra select til select

Jeg skal bruge et javascript.

Det skal først fjerne alle options i den select der hedder placeid. Og det skal ske når man ændrer valg (se onchange i den) i den select der hedder countryid.

Dernæst skal der være et andet script som indsætter(kopierer) alle options fra det (skjulte) område som tilhører landet.

Så det kommer til at slutte med at når man vælger et land, så indsættes landets områder automatisk i den næste select.

Jeg har nogle scripts, men jeg kan ikke finde ud af at få det lavet så det virker. Så jeg beder om hjælp her til det :o)

Herunder er mit kode som scriptet skal styre.

<form action="onskelisten.php" method="post">
    <select style='display: none;' multiple id="countryid1" name="countryid1">
        <option value="1">Jylland Nord</option>
        <option value="2">Jylland Midt</option>
        <option value="3">Jylland Syd</option>
        <option value="4">Fyn</option>
        <option value="5">Sjælland</option>
    </select>
    <select style='display: none;' multiple id="countryid2" name="countryid2">
        <option value="1">Blekinge</option>
        <option value="2">Dalarna</option>
        <option value="3">Gotland</option>
        <option value="4">Gävleborg</option>
        <option value="5">Halland</option>
    </select>
    <select style='display: none;' multiple id="countryid3" name="countryid3">
        <option value="1">Midt-Norge</option>
        <option value="2">Nord-Norge</option>
        <option value="3">Sørlandet</option>
        <option value="4">Vestlandet</option>
    </select>
    <select style='display: none;' multiple id="countryid4" name="countryid4">
        <option value="1">Baden-Württemberg</option>
        <option value="2">Bayern</option>
        <option value="3">Berlin</option>
        <option value="4">Brandenburg</option>
        <option value="5">Bremen</option>
    </select>
    <select style='display: none;' multiple id="countryid5" name="countryid5">
        <option value="1">Alabama</option>
        <option value="2">Alaska</option>
        <option value="3">Arizona</option>
        <option value="4">Arkansas</option>
        <option value="5">California</option>
    </select>
    <select style='display: none;' multiple id="countryid6" name="countryid6">
        <option value="1">Alberta</option>
        <option value="2">British Columbia</option>
        <option value="3">Manitoba</option>
    </select>
    Svar på disse spørgsmål for at komme videre:<br>
    <br>
    <table border="0" cellpadding="2" cellspacing="0">
    <tr>
    <td>Land </td>
    <td width="200">
    <select style="width: 99%" name="countryid" onChange="DelAllFrom(placeid);copy_all_from_selecteds_value(countryid,placeid)">
        <option value='' selected>V&aelig;lg</option>   
        <option value="6" >Canada</option>
        <option value="1" >Danmark</option>
        <option value="3" >Norge</option>
        <option value="2" >Sverige</option>
        <option value="4" >Tyskland</option>
        <option value="5" >USA</option>
    </select>
    </td>
    </tr>
    <tr>
    <td>Hvor bor du </td>
    <td width="200">
    <select style="width: 99%" id="placeid" name="placeid">
        <option value='' selected>V&aelig;lg f&oslash;rst land</option>                               
    </select>
    </td>
    </tr>
    <tr>
    <td>Hvem er du </td>
    <td width="200">
    <select style="width: 99%" name="titelid">
        <option value='' selected>V&aelig;lg</option>                                       
        <option value="1" >Privatperson</option>
        <option value="2" >Mekaniker (ikke momsreg)</option>
        <option value="3" >Mekaniker/Værksted (momsreg)</option>
        <option value="4" >Hugger (momsreg)</option>
    </select>
    </td>
    </tr>
    </table>
    <br>
    <input type="submit" style="width:150" name="remember_who_i_am" value="Videre &gt;&gt;">
</form>

Please help me :o)
Avatar billede learner Praktikant
04. december 2004 - 15:58 #1
Du kan evt bare smide et script som jeg kan ændre og tilpasse til min situation.
Jeg kan da prøve i hvert fald :o)

Jeg glæder mig meget til at få det til at virke...
Avatar billede skovenborg Nybegynder
04. december 2004 - 17:47 #2
ved ikke om det opfylder alle krav, men prøv:

<script type="text/javascript">
function valgtLand(idx,toSelectBox) {
    toSelectBox.length = 0; // Slet alle options i placeid
    fromSelectBox = toSelectBox.form.elements["countryid"+idx];
    for (i=0;i<fromSelectBox.length;i++) {
        opt = new Option(fromSelectBox.options[i].text,fromSelectBox.options[i].value);
        toSelectBox.options[i] = opt;
    }
}
</script>

<select style="width: 99%" name="countryid" onChange="if (this.selectedIndex > -1) {valgtLand(this.value,this.form.placeid);}">
        <option value='' selected>V&aelig;lg</option> 
        <option value="6" >Canada</option>
        <option value="1" >Danmark</option>
        <option value="3" >Norge</option>
        <option value="2" >Sverige</option>
        <option value="4" >Tyskland</option>
        <option value="5" >USA</option>
    </select>
Avatar billede learner Praktikant
04. december 2004 - 17:50 #3
Tak, jeg prøver det, men når nok ike lige at skrive tilbage idag :o)
Men takker :o)
Avatar billede learner Praktikant
04. december 2004 - 18:07 #4
hvorfor dette
if (this.selectedIndex > -1) {

??? :o)
Avatar billede learner Praktikant
04. december 2004 - 18:25 #5
nej, det virker bare som det skal :o)
Tusind tak for det :o)

Smider du et svar?

MVH Michael
Avatar billede learner Praktikant
04. december 2004 - 18:26 #6
Jeg har ændret det en smule:

onChange="if(this.selectedIndex>-1){valgtLand('countryid',this.value,this.form.placeid);}"

og

function valgtLand(firstletters,idx,toSelectBox) {
    toSelectBox.length = 0; // Slet alle options i placeid
    fromSelectBox = toSelectBox.form.elements[firstletters+idx];
    for (i=0;i<fromSelectBox.length;i++) {
        opt = new Option(fromSelectBox.options[i].text,fromSelectBox.options[i].value);
        toSelectBox.options[i] = opt;
    }
}

Men nøj hvor er det dejligt, tusind tak
Avatar billede skovenborg Nybegynder
04. december 2004 - 19:04 #7
det var godt :-)

this.selectedIndex > -1 burde egentlig være > 0. Den skulle gerne gøre at man ikke kunne vælge den første option. lidt af en tanketorsk det andet ;-)
Avatar billede learner Praktikant
05. december 2004 - 11:09 #8
ok, tak :o)
Avatar billede learner Praktikant
05. december 2004 - 11:53 #9
øhhh, det virker ikke som det skal med > 0
Men det virker fint med > -1

:o)

Måske skal det være > -1 alligevel... :o)
Hvordan kan det være?
Avatar billede learner Praktikant
05. december 2004 - 11:54 #10
Nåhh, man kan ikke vælge den første option, aha!
Nu forstår jeg bedre...
bare glem det igen...
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester