• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[GELÖST] Select Option Auswahl

xoli

New member
Hallo

Ich habe ein kleines Problem mit der Darstellung von Select-Buttons. Noch zu erwähnen wäre, dass der Einsatz in einer mobilen Umgebung erfolgt.

HTML:
<div data-role="content" data-theme="e">
   <form name="form_equip_tauschen">
      <select id="select_tk" name="select_tk">
         <option value="0">Techniker auswählen</option>
      </select>
      <select id="equip_neu_1" name="equip_neu_1" onchange="Seriennummer_waehlen(document.form_equip_tauschen.equip_neu_1.value,document.form_equip_tauschen.select_tk.value)">
         <option value="0">neues Gerät auswählen</option>
      </select>
      <select id="equip_neu_2" name="equip_neu_2">
         <option value="0">Seriennummer auswählen</option>
      </select>
   </form>
</div>

Code:
function Seriennummer_waehlen(geraet,user) {
   if (geraet && user) {

      // Nach Auswahl von Button 2 sollen die Options von Button 3 wieder gloescht werden
      // Parameter "1" gibt dabei ein Limit fuer die Zaehlschleife an, da der 1. Eintrag bestehen bleiben soll
      Optionen_loeschen("equip_neu_2",1);

      // entsprechende Daten fuer Button 3 laden 
      Optionen_laden(3,geraet,user);

      // bis hier funktioniert alles wunderbar

      // nun moechte ich dass bei Button 3 wieder "Seriennummer auswählen" steht
      document.form_equip_tauschen.equip_neu_2.options[0].selected = true;
   }
};

function Optionen_loeschen(id,max_row) {
   var opts = document.getElementById(id);

   for (var i = opts.length - 1; i >= max_row; i--) {
      opts.remove(i);
   }
};

Screenshot by Lightshot
Hier wurde nun ein Geraet ausgewaehlt und die entsprechenden Seriennummern in der 3. Select Box geladen. Es steht "Seriennummer auswaehlen" und genauso soll es auch sein.

Screenshot by Lightshot
Nun wurde eine passende Seriennummer zu dem ausgewaehlten Geraet selektiert.

Screenshot by Lightshot
Und nun kommt das Problem. Nachdem die Seriennummer geaendert wurde, wird das Geraet gewechselt. Daraufhin muss natuerlich Select Box 3 aktualisiert werden. Das heisst alte Seriennummer raus und neue laden. Klappt alles wunderbar .. nur wie auf dem Bild zu sehen ist steht da immernoch die zuvor gewaehlte Seriennummer. Wie bekomme ich es hin, dass da wieder "Seriennummer auswaehlen" steht .. also quasi wieder die Option[0] selected wird !?

Ich habe jetzt wirklich alles versucht, aber ich bekomme die Anzeige einfach nicht aktualisiert und hoffe wirklich ihr koennt mir da helfen.

Danke vorab und lG
Oliver
 
Zuletzt bearbeitet von einem Moderator:
also quasi wieder die Option[0] selected wird !?
Code:
document.getElementById("equip_neu_2").value = "0";

Aber das Ganze sieht mir nicht nach einem Standard-<select> aus, sondern nach einer Ersetzung, damit man da ein Design reinkloppen kann. Es sieht so aus, als würde sich das Teil einfach nicht aktualisieren. Was verwendest du denn da?
 
Hez

Hab ich leider auch schon versucht.

Ich verwende jquery.mobile
Auf den Fotos wird die Ansicht auf einem mobilen Geraet angezeigt.

Und ja du hast Recht .. es wird einfach nicht aktualisiert. Tausche ich in der 2. Select Box das Geraet steht zwar in der 3. Select Box noch die zuvor eingegebene Seriennummer, wenn ich mir aber das Value von der 3. Select Box ausgeben lasse passt es. Die neu geladenen Options passen auch, wenn ich in die 3. Select Box klicke .. es ist wirklich nur das Text-Label der 3. Select Box welches ich nach Wechsel der 2. Select Box nicht aktualisiert bekomme.
 
Probier' mal
Code:
document.getElementById("equip_neu_2").dispatchEvent(new Event("change"));
Zusätzlich solltest du in der Dokumentation von jquery.mobile nachlesen, ob es da nicht ein refresh gibt.

PS: es könnte ev. auch helfen, wenn du für die DOM-Manipulation jQuery verwendest.
 
Zurück
Oben