MadCro Geschrieben 6. September 2004 Teilen Geschrieben 6. September 2004 hi zusammen, hab ein kleines select feld was "multiple" ist, d.h. es können mehrere Einträge ausgewählt werden, nun muß ich wissen welche Einträge ich ausgewählt habe, soweit auch kein Problem klappt alles wunderbar. for(var i = 0; i < form.customer_having_storys.length; i++) { if(form.customer_having_storys[i].selected == true ) { alert("die story mit der ID" + form.customer_having_storys[i].value + "wurde gewählt") ; // das ganze nur als Bsp. } } so nun aber muss ich das ganze erweitern und wissen welcher Eintrag als letztes ausgewählt wurde, also wenn ich z.B. drei Einträge ausgewählt habe will ich wissen welchen von diesen Drei als letzte ausgewählt wurde, da ich zu diesem weiteren Infos anzeigen muss. Hab leider keine Ahnung wie ich das lösen könnte, googlen hat auch nichts gebracht. Jemand von Euch eine Idee ? Danke Gruß :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 6. September 2004 Teilen Geschrieben 6. September 2004 zeig einfach bei jedem "onchange" die Infos zu dem ausgewählten artikel an. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 zeig einfach bei jedem "onchange" die Infos zu dem ausgewählten artikel an. wenn es so einfach wäre :mod: das Problem ist wenn ich einen Eintrag mit der ID 1 auswähle dann einen Eintrag mit der ID 5 und dann einen Eintrag mit der ID 3 dann sieht meine List so aus 1,3,5 aber ich will das sie so aussieht 1,5,3 also in der Reihe in der die Einträge auch ausgewählt wurden, damit ich als letzten ausgewählenten Eintrag den Eintrag mit der ID 3 habe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Der Kleine Geschrieben 6. September 2004 Teilen Geschrieben 6. September 2004 wenn es so einfach wäre :mod: Naja, dann wirst du bei jedem onChange_click dir die gerade ausgebwählte ID irgendwo merken müssen(Verstecktes Listenfeld etc.), anders (also bei direkter Feldabfrage) merkt man nur die ausgweählten, nicht aber die Reihenfolge der Auswahl. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 6. September 2004 Teilen Geschrieben 6. September 2004 wenn es so einfach wäre :mod: Es ist so einfach! So sollte es gehen: JS: var aDescriptions = new Array(); aDescriptions[0] = "Beschreibung 1"; aDescriptions[1] = "Beschreibung 2"; aDescriptions[2] = "Beschreibung 3"; function showDescription( iValue) { document.getElementById( "Description").value = aDescriptions[ iValue -1]); } HTML: <select name="Select" onchange="showDescription( this.value)"> <option value="1">Option1</option> <option value="2">Option2</option> <option value="3">Option3</option> </select> <div id="Description"> </div> ungetestet! notfalls musst du mit onclick arbeiten ! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 Naja, dann wirst du bei jedem onChange_click dir die gerade ausgebwählte ID irgendwo merken müssen(Verstecktes Listenfeld etc.), anders (also bei direkter Feldabfrage) merkt man nur die ausgweählten, nicht aber die Reihenfolge der Auswahl. das geht nicht, weil lastSelectedIndex mir immer nur den Index ausgibt der der kleinste Index der gewählten Einträge ist das hier genau so <select ...blabla... onChange="JavaScript:ShowData(this.value)" > function ShowData(value) { alert (value) ; } es wird immer der Wert ausgegeben der als erster in der Liste steht (also den kleinsten Index hat) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 hej Kills, danke für Deine Mühe aber den JS Code verstehe ich nicht so ganz, was genau willst Du damit erreichen ? danke Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 6. September 2004 Teilen Geschrieben 6. September 2004 Also, wenn du es wirklich so haben möchtest, dann müßtest du dir in einem eigenen Array den Zustand merken und, sobald der User was ändert, über onClick() überprüfen, welcher Eintrag denn dazugekommen/hinweggekommen ist. Dementsprechend kannst du dann mit kills Methode in einem div-Feld dynamisch Information anbieten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 hi, ja die Idee mit dem Array habe ich auch schon gehabt, aber das array wird jedes mal neu inizlalisiert wenn ich dei Funktion die bei OnChange (oder onClick) aufgerufen wird und damit sind alle daten die ich im Array hate doch wieder weg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 hi, ja die Idee mit dem Array habe ich auch schon gehabt, aber das array wird jedes mal neu inizlalisiert wenn ich dei Funktion die bei OnChange (oder onClick) aufgerufen wird und damit sind alle daten die ich im Array hate doch wieder weg hehe ich idiot ich kann ja das array aushalb der function inizialisieren :floet: jetzt kalppt, danke allen !! function ShowComment(form, SelectName) { for(var i = 0; i < form.elements[SelectName].length; i++) { imArray = false ; if(form.elements[SelectName][i].selected == true ) { if(StorysArray.length > 0) { for(var k=0; k< StorysArray.length ; k++) // für jede story die schon im array ist { if(StorysArray[k] == form.elements[SelectName][i].value) { imArray = true ; } } if(imArray == false) { StorysArray[j] = form.elements[SelectName][i].value ; // noch nicht im array also schreib rein j++ ; } } else { StorysArray[j] = form.elements[SelectName][i].value ; j++ ; } } last_ID = StorysArray[StorysArray.length-1] ; // der letze eintrag im array muss doch dem letzen ausgesuchten Eintrag entsprechen alert(last_ID); } EDIT doch nicht ganz, was mache ich den wenn ein Eintrag wieder deselctiert wurde :confused: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MadCro Geschrieben 6. September 2004 Autor Teilen Geschrieben 6. September 2004 ok also fals es jemand interessiert, der ganze code nun StorysArray = new Array(); j = 0 ; function ShowComment(form, SelectName) { for(var i = 0; i < form.elements[SelectName].length; i++) { imArray = false ; if(form.elements[SelectName][i].selected == true ) { if(StorysArray.length > 0) { for(var k=0; k< StorysArray.length ; k++) // für jede story die schon im array ist { if(StorysArray[k] == form.elements[SelectName][i].value) { imArray = true ; } } if(imArray == false) { StorysArray[j] = form.elements[SelectName][i].value ; // noch nicht im array also schreib rein j++ ; } } else // es ist der erste Aufruf das array ist noch leer { StorysArray[j] = form.elements[SelectName][i].value ; j++ ; } } else // ist nicht selectiert mal gucken ob ich es aus dem array werfen muss { for(var k=0; k< StorysArray.length ; k++) // für jede story die schon im array ist { if(StorysArray[k] == form.elements[SelectName][i].value) // das element ist im array aber wurde "deselectiert" { StorysArray = StorysArray.slice(0,k); } } } } ST_ID = StorysArray[StorysArray.length-1] ; // der letze eintrag im array muss doch dem letzen ausgesuchten Eintrag entsprechen // alert(ST_ID); qPopUp("show_story_comment.php?ST_ID="+ST_ID) ; } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.