Mehrfachauswahl durch JS in einer Auswahlliste?
Marcus Tippmann
- javascript
Hi,
mein Problem ist, ich möchte eine Mehrfachauswahl in einer Auswahlliste mittels JavaScript realisieren. Dazu habe ich das Form entsprechend auf multiple gesetzt.
<form action="" name="Bedingung">
<select name="Bezeichnervorhanden" size="6" multiple>
<option>Bezeichner ist</option>
</select>
Später fülle ich die Optionen aus einem Array auf und überprüfe, ob ich in einem anderen Array die gleichen Werte habe und möchte diese dann in Bedingung.Bezeichnervorhanden selectieren.
Tja, nun mein Problem, ... es klappt nicht!
Hier meine entsprechende Codestelle:
var al = -1;
for (var a=0; a < 23; a++)
{
for(var b=0; b<((bedingfrag[a].length)); b++)
{
if (bedingfrag[a][b][1] == schalter[1])
{
if ( a != al)
{
document.Bedingung.Antwortlist.selectedIndex=a;
Bedingbez();
al = a;
}
document.Bedingung.Bezeichnervorhanden.options[b].selected=true;
}
}
}
Wobei bedingfrag ein mehrdimensionales Array ist (wie man sieht) in dem eine größere Menge Daten stehen und Schalter einfach einige Möglichkeiten, die in bedingfrag enthalten sein könnten. Diese möchte ich dann vorselektieren.
Also, wer kann mir helfen?
Wie selektiere ich Mehrfachauswahlen?
Gruß
Marcus
hi
[...]
Also, wer kann mir helfen?
Wie selektiere ich Mehrfachauswahlen?
indem du checkboxen statt auswahlboxen nimmst, geht auch ohne JS.
Fabian
hi
[...]
Also, wer kann mir helfen?
Wie selektiere ich Mehrfachauswahlen?
indem du checkboxen statt auswahlboxen nimmst, geht auch ohne JS.
Fabian
1.) Du gibst keine Antwort auf meine Frage.
2.) An die Checkboxvariante habe ich auch schon gedacht und sie ausgeschlossen da,
3.) In diesem Fall so nicht möglich, da ich die Anzahl der Checkboxen dynamisch halten müsste, ebenso ihren Inhalt. Was glaubst du, warum ich es über eine Auswahlbox machen möchte?
Mir stehen mehrere tausend Kombinationsmöglichkeiten auf der Vorauswahlseite offen (was denkst du warum das Array mehrdimensional ist?) und der Kunde wünscht ausdrücklich eine Lösung via Standartbrowser ohne Plugins.
Vertrau mir halt soweit, das ich meine Gründe habe, warum ich eine Auswahlbox verwende. Es geht nicht darum es kompliziert zu machen.
hi
indem du checkboxen statt auswahlboxen nimmst, geht auch ohne JS.
Fabian
1.) Du gibst keine Antwort auf meine Frage.
mhh? ich habe dir nicht weitergeholfen, das mag sein, aber eine antwort habe ich gegeben. wenn sie nicht sinnvoll war, okay, das passiert halt.
2.) An die Checkboxvariante habe ich auch schon gedacht und sie ausgeschlossen da,
3.) In diesem Fall so nicht möglich, da ich die Anzahl der Checkboxen dynamisch halten müsste, ebenso ihren Inhalt. Was glaubst du, warum ich es über eine Auswahlbox machen möchte?
wo ist das problem?
Mir stehen mehrere tausend Kombinationsmöglichkeiten auf der Vorauswahlseite offen (was denkst du warum das Array mehrdimensional ist?) und der Kunde wünscht ausdrücklich eine Lösung via Standartbrowser ohne Plugins.
1.) wenn der Kunde Standartbrauser[tm] will, dann ist JS _prinzipiell_ auszuschließen und du kannst das ganze nochmal probieren.
2.) ist in dem Fall etwas serverseitiges die beste lösung, und dann müssen
3.) checkboxen ran, weil man eben nicht _mehrere_ auswahlfelder gleichzeitig anwählen _kann_
4.) PlugIns brauchste keine.
Vertrau mir halt soweit, das ich meine Gründe habe, warum ich eine Auswahlbox verwende. Es geht nicht darum es kompliziert zu machen.
gut, aber genau das tust du.
Fabian
*rofl*
Du bist ja fast so hartnäckig wie ich!
Also, Problem ist folgendes, ich habe die Aufgabe, ein Pflegetool für ein Webbasiertes Leistungsverzeichniserstellungssystem zu Coden. Das LVSystem fäuft nach einem Frage/Antwortschema ab, wobei eine gegebene Antwort Einfluß auf nachfolgende Fragen und/oder deren Antworten haben kann (aber nicht muss).
Das Pflegetool soll es nun ermöglichen, die Datenbank mit kompletten neuen Fragebäumen zu füllen, oder bestehende zu verändern. Soweit so gut.
Da ich die Inhalte der Datenbank im weiteren NICHT vorhersagen kann, muß ich also alles so dynamisch wie möglich halten. Is auch klar.
Nun tritt folgendes Problem auf.
Wenn ich Checkboxen verwende, dann sehe ich mich einer unbekannten Anzahl von Checkboxen gegenüber, die in der Masse der Fälle lediglich eine Auswahl tragen. Und zwar die Antwort der Frage, die die gegenwärtig ausgewählte Antwort beeinflusst. Sollte sich der Operator aber entscheiden, eine andere Frage als Beeinflußungspunkt zu verwenden, so müsste ich die dargestellten Checkboxen alle wieder löschen und durch neue ersetzen. Kein Problem wenn ich das Serverseitig mache, aber es wird doch ein klein wenig unkomfortabel für den User, wenn er durch die Fragen/Antworten Browsen will. Zudem macht es das Handling des Tools unheimlich unübersichtlich (ich hab das schon versucht). Lediglich bei wenigen 'Oder'-Fällen wird eine Mehrfachauswahl benötigt. Hier aber auf eine andere Methodik aus zu weiche wäre mehr als unelegant. Und last but not least, mein Chef sagte zu den Chaeckboxenidee (ich zitiere Wörtlich): "Ne, das ist Mist, versuch mal ob dir was Anderes einfällt, das sieht blöd aus".
Soviel also zu "unnötig" kompliziert. Manchmal ist kompliziert leider auch nötig.
Zu dem "geht nicht" bei mehrfachauswahl von Checkboxen. Ich denke nicht, das es schlicht unmöglich ist. Immerhin kann man es ja auch "per Hand" anzählen und der Browser kann es auslesen. Wenn er es lesen kann, so meine ich, das es dafür auch eine Variable geben muss, die dort gelesen wird. Wenn es eine solche gibt, sollte man diese auch setzen können, oder?
Ich denke eher an einen Dokumentationsfehler (bei allem Respekt für speziell diese Dokumentation hier) oder es ist im objekthandling schlicht nicht definiert worden. Das würde aber prinzipiell nichts machen, wenn es dennoch eine Möglichkeit, die zu bewerkstelligen. Und solche Möglichkeiten gibt es (vergleiche Variablenübergabe von einem Fenster ins andere mittels Hashtabellen) und ich hoffe, jemand kennt sie.
hi
*rofl*
Du bist ja fast so hartnäckig wie ich!
ich nehme mein Hobby sehr ernst ;-))
(insofern danke für das kompliment(?))
Also, Problem ist folgendes, ich habe die Aufgabe, ein Pflegetool für ein Webbasiertes Leistungsverzeichniserstellungssystem zu Coden. Das LVSystem fäuft nach einem Frage/Antwortschema ab, wobei eine gegebene Antwort Einfluß auf nachfolgende Fragen und/oder deren Antworten haben kann (aber nicht muss).
toll, nach drei postings sagst du endlich, worum es geht :-))
gegenfrage: darf man sich das anschauen, oder muss man der beschreibung hier glauben schenken? ich glaube in der Tat, dass mir das nicht ganz klar ist. :-/
Das Pflegetool soll es nun ermöglichen, die Datenbank mit kompletten neuen Fragebäumen zu füllen, oder bestehende zu verändern. Soweit so gut.
Da ich die Inhalte der Datenbank im weiteren NICHT vorhersagen kann, muß ich also alles so dynamisch wie möglich halten. Is auch klar.
ja, dynamik ist trumpf.
Nun tritt folgendes Problem auf.
Wenn ich Checkboxen verwende, dann sehe ich mich einer unbekannten Anzahl von Checkboxen gegenüber, die in der Masse der Fälle lediglich eine Auswahl tragen. Und zwar die Antwort der Frage, die die gegenwärtig ausgewählte Antwort beeinflusst. Sollte sich der Operator aber entscheiden, eine andere Frage als Beeinflußungspunkt zu verwenden, so müsste ich die dargestellten Checkboxen alle wieder löschen und durch neue ersetzen. Kein Problem wenn ich das Serverseitig mache, aber es wird doch ein klein wenig unkomfortabel für den User, wenn er durch die Fragen/Antworten Browsen will.
möglicherweise unkomfortabel, allerdings ist es 1.) für dich einfacher (was den user nicht _im geringsten_ interessiert) und 2.) muss der user andererseits für den komfort der editierbarkeit vielleicht einmal mehr seine maus klicken...
Zudem macht es das Handling des Tools unheimlich unübersichtlich (ich hab das schon versucht). Lediglich bei wenigen 'Oder'-Fällen wird eine Mehrfachauswahl benötigt. Hier aber auf eine andere Methodik aus zu weiche wäre mehr als unelegant. Und last but not least, mein Chef sagte zu den Chaeckboxenidee (ich zitiere Wörtlich): "Ne, das ist Mist, versuch mal ob dir was Anderes einfällt, das sieht blöd aus".
Soviel also zu "unnötig" kompliziert. Manchmal ist kompliziert leider auch nötig.
letzteres finde ich unfair und es zeigt, dass Chefs (sorry) manchmal nicht den blick für's wesentliche haben. Ich sage mal Ron Sommer und Konsorten. Wichtig ist, dass es _funktioniert_. wenn dazu aber wegen deinem chef 50.000 zeilen code mehr gemacht werden müssen ist das schlicht unwirtschaftlich.
Zu dem "geht nicht" bei mehrfachauswahl von Checkboxen. Ich denke nicht, das es schlicht unmöglich ist. Immerhin kann man es ja auch "per Hand" anzählen und der Browser kann es auslesen. Wenn er es lesen kann, so meine ich, das es dafür auch eine Variable geben muss, die dort gelesen wird. Wenn es eine solche gibt, sollte man diese auch setzen können, oder?
_wenn_ es sie gibt, dann ja. allerdings habe ich sie noch nicht gefunden, sorry, deswegen mein konträrer ansatz.
Ich denke eher an einen Dokumentationsfehler (bei allem Respekt für speziell diese Dokumentation hier) oder es ist im objekthandling schlicht nicht definiert worden. Das würde aber prinzipiell nichts machen, wenn es dennoch eine Möglichkeit, die zu bewerkstelligen gibt. Und solche Möglichkeiten gibt es (vergleiche Variablenübergabe von einem Fenster ins andere mittels Hashtabellen) und ich hoffe, jemand kennt sie.
mhh, ich glaube in der Tat, dass es wenn dann eine proprietäre Lösung ist, und das dürfte nicht in deinem Interesse liegen. Da ich an den letzten Formulierungen deinerseits erkenne, dass du aus der Perl-Ecke kommst, mus sich leider passen, bin halt PHP-Progger ;-))
Fabian