Hi,
bin grad dabei von einem <select multiple> in ein zweites <select multiple> einträge zu transferieren. Typische Sache denk ich.
Nun hab ich aber ein Problem - wenn ich mehrere Einträge markiere um sie zu übertragen werden niemals alle in die zweite selectbox übernommen.
Ich hab das Problem auch mtwl lokalisert. Meine for-Schleife läuft nicht bis zum Ende, da sich die eigenschacht selectbox.options.length ja ändert, wenn ich den Eintrag den ich in die zweite Box übertragen habe aus der ersten wieder raus nehme.
Hier mal meine Funktion:
Da in der Option des Selects auch eine ID gespeichert wird, könnte ich ja einfach nach dem hinzufügen durch die Quell-Selectbox rocken und die entsprechenden Elemente löschen.
Mich würde aber interessieren, ob es eine besser Möglichkeit gibt. Any hints?
bin grad dabei von einem <select multiple> in ein zweites <select multiple> einträge zu transferieren. Typische Sache denk ich.
Nun hab ich aber ein Problem - wenn ich mehrere Einträge markiere um sie zu übertragen werden niemals alle in die zweite selectbox übernommen.
Ich hab das Problem auch mtwl lokalisert. Meine for-Schleife läuft nicht bis zum Ende, da sich die eigenschacht selectbox.options.length ja ändert, wenn ich den Eintrag den ich in die zweite Box übertragen habe aus der ersten wieder raus nehme.
Hier mal meine Funktion:
PHP-Code:
function move_user(from_id, to_id){
var from = document.getElementById(from_id);
var to = document.getElementById(to_id);
for(i = 0; i < from.options.length; i++){
if(from.options[i].selected){
var new_option = new Option(from.options[i].text, from.options[i].value, false, false)
to.options[to.options.length] = new_option;
from.options[i] = null;
}
}
}
Mich würde aber interessieren, ob es eine besser Möglichkeit gibt. Any hints?
Kommentar