Elemente aus <Select> entfernen -> Problem

pxlArtizzt

Erfahrenes Mitglied
Hallo @ all,

ich habe ein multiples Select-Formular und möchte nun, sobald man auf einen entsprechenden Button klickt, dass die markierten Elemente entfernt werden...

hier mein Script dazu:

PHP:
function remove_entry(formname,sel) {
	if (formname.elements[sel].length > 0) {
		for (var i=0; i<formname.elements[sel].length; i++) {
			if (!formname.elements[sel].options[i].selected) {
				continue;
			} else {
				formname.elements[sel].remove(formname.elements[sel].options[i]);
			}
		}
	}
}

leider wird immer nur das <b>erste</b> Element entfernt... warum? Ich komme nicht dahinter :(

Vielen Dank für eure Hilfe ;)
 
Hi,

kannst du biite die ganze Datei posten, sonst muss ich das ganze Forumlar rekonstruieren,,, In welchem zusammenhang verwendest du hier ".remove" ?

bye
 
Ok,
hab die Funktion so abgeändert, das du alle markierten Elemente entfernen kannst - am Aufruf ändert sich nix...
Code:
function remove_entry(formname,sel) {
  var marked = new Array();
  if (formname.elements[sel].length > 0) {
    for (var i=0; i<formname.elements[sel].length; i++) {
      if (!formname.elements[sel].options[i].selected) {
        continue;
      } else {
        marked.unshift(i);
      }
    }
    for(var x=0; x<marked.length; x++){ 
      formname.elements[sel].options[marked[x]] = null;
    }
  }
}
oder wolltest du es so wie fatalus vermutet hat?
Das Problem bei multiple Select Feldern ist, sobald man ein Element gelöscht hat der Index nicht mehr stimmt... Die neue Funktion schreib erst ein Array mit allen markierten Feldern, allerdings nicht "normal" sondern mit "unshift" - es schreibt also neue Einträge an den Anfang. Das hat den Vorteil das der höchste Index zuerst gelöscht wird, was den niedrigeren Indizes egal sein kann...

bye
 
@fatalus: nein, die Buttons lassen es zwar vermuten, aber es war nicht ganz so gemeint.

@Andreas: wow, super, es klappt! (nicht, dass ich an deinen Fähigkeiten gezweifelt hätte ;)) vielen Dank für deine Mühe, du hast mir echt geholfen!
 

Neue Beiträge

Zurück