[JS-HTML] Multiple select van de een naar de ander

Pagina: 1
Acties:

  • bluesbrother
  • Registratie: Februari 2002
  • Laatst online: 26-01 14:21

bluesbrother

Blues Rocks!!!

Topicstarter
Shoot me lek !
Ik ben niet zo heel erg thuis in JS dus dat zal de reden wel zijn.
Ik heb 2 multiple select boxen waar de waardes van de een naar de ander, via een button moeten worden overgeheveld, als de gebruiker daar op klikt. Als de gebruiker klaar is slaat deze de waarden op, in een mysql database.

Eerst had ik een probleem dat de Array niet aankwam in PHP maar dat heb ik dankzij de onderstaande draadjes op kunnen lossen. Om kort te gaan: [] is de sleutel.

draadje 1

draadje 2

Maar nu heb ik het volgende probleem. De gebruiker kan meerdere items selecteren en dan op de knop drukken. Dan werden de waarden van de ene box naar de andere overgeheveld. Nu kan je nog wel meerdere waarden selecteren, maar je moet voor elk item dat je geselecteerd hebt op de knop blijven drukken tot ze allemaal in de andere select staan. Voor de aanpassing kon dat in één keer.

Javascript:
code:
1
2
3
4
5
6
7
8
9
10
11
12
function MoveOption(fromID, toID){
    // alert("ik doe het");
    
    var i = document.getElementById( fromID ).selectedIndex;
    var o = document.getElementById( fromID ).options[ i ];
    var theOpt = new Option( o.text, o.value, false, false );

    document.getElementById( toID ).options[document.getElementById( toID ).options.length] = theOpt;

    document.getElementById( fromID ).options[ i ] = null;

}


HTML:
code:
1
2
3
4
5
6
7
8
9
10
11
<form id="form2" name="form2" method="" action="">

<select name="adressen[]" size="15" id="adressen" multiple="multiple" class="AldoTest">
              <option value="1">Adres 1</option>
              <option value="2">Adres 2</option>
</select>

<input type="button" name="VoegToe" id="VoegToe" value="&gt;&gt;" onclick="MoveOption('adressen[]', 'groepen[]')" />

<select name="groepen[]" size="15" multiple="multiple" class="AldoTest">
          </select>


en nog voor het opslaan:
code:
1
<input type="submit" name="doehet" id="doehet" value="DoeHet" onclick=""/>


Niet helemaal van toepassing voor de vraag maar toch (onderstaande werkt dus wel):
code:
1
2
3
4
5
6
7
8
9
10
    if (isset($_POST['doehet'])){


    foreach($_POST['adressen'] as $value) {
        
          echo "<br />waarden: " . $value;
          
    }
    
}


HIER een draadje van het script in actie.
(Als het opgelost is haal ik het weer weg.)

Wil je je pizza in 4 of 8 stukken? .......Doe maar in 4, 8 krijg ik niet op.


  • Noork
  • Registratie: Juni 2001
  • Niet online
In Opera en Firefox werkt het hele overhevel gebeuren niet goed. Dat zou ik eerst maar eens fixen. Zijn er niet tig voorbeelden van te vinden op internet?

zie b.v. http://www.mredkj.com/tutorials/tutorial_mixed2b.html (werkt ook onder Opera)

[ Voor 22% gewijzigd door Noork op 12-02-2009 10:57 ]


  • truegrit
  • Registratie: Augustus 2004
  • Laatst online: 22-09 09:11
In draadje 1 staat toch als eerste reply een werkende versie die doet wat jij wil? Die van jou doet echt helemaal niks in zowel opera als firefox.

hallo


  • Cartman!
  • Registratie: April 2000
  • Niet online
Logisch, je geeft immers zelf aan dat het per stuk moet, die button zorgt ervoor dat ie 1 eruit pikt (de eerste geselecteerde blijkbaar) en die verplaats je. Althans, probeer je...want in firefox gebeurt er niets visueels. Verder vind ik het eigenlijk raar dat ie 'adressen[]' als argument meegeeft terwijl je element het id 'adressen' heeft en dat dit ergens nog lijkt te werken ook (blijkbaar alleen in IE). Ik denk dat je gewoon eerst moet inzien waarom ie er maar 1 pakt en daarmee een oplossing moet gaan zoeken :)

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

* NMe wijst bluesbrother even op Waar hoort mijn topic? ;)

PRG>>WEB

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • bluesbrother
  • Registratie: Februari 2002
  • Laatst online: 26-01 14:21

bluesbrother

Blues Rocks!!!

Topicstarter
draadje 2 stond ook bij programing...........Maar daar zal wel een wereld van verschil in zitten met mijn post. 8)7

ontopic:


Ik zal opnieuw beginnen met het voorbeeld zoals in het andere draadje.
Wat ik had deed heel lang wat ik wilde (welliswaar in IE.)
Ik doe alles met FF, maar waar ik het voor maak hebben ze alleen IE dus gebruik ik dat alleen om het te debuggen.

Wil je je pizza in 4 of 8 stukken? .......Doe maar in 4, 8 krijg ik niet op.


  • MueR
  • Registratie: Januari 2004
  • Laatst online: 19:56

MueR

Admin Tweakers Discord

is niet lief

Nou, ga dan ook debuggen? Kijk eens wat je terugkrijgt uit je post, om maar iets te noemen?

Anyone who gets in between me and my morning coffee should be insecure.

Pagina: 1