NEWS
Ändern eines Dropdown-Feldes
-
Hallo,
in meinem Adapter habe ich ein Dropdown-Feld:
<div class="input-field col s12"> <select class="value" id="selectfeld"> <option value="" disabled selected>Choose your option</option> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> </select> <label>Materialize Select</label> </div>
Ich will nun dynamisch per js Werte hinzufügen.
Das hier funktioniert (in der load-Funktion):$('#selectfeld').append(' <option value="4">Option 4</option>');
Ich will aber die hinzuzufügenden Werte per sendTo() von meiner main.js abholen.
sendTo() hat bekanntlich einen callback, den möchte ich für das append der neuen Werte nutzen.
Das hier klappt nicht:sendTo(dest, 'send', null, response => { $('#selectfeld').append(' <option value="4">Option 4</option>'); sendTo(dest, 'test', {par1: response}, null); } );
Der body der callback-Funktion wird nicht ausgeführt, das zweite sendTo() kommt nicht an.
Wenn ich die Zeile 2 auskommentiere kommt der 2. sendTo() an. Es scheint als würde die jQuery zu einer exception führen?
Jemand ne Idee?Viele Grüße,
lugge -
@lugge86 Mal in die Browser Konsole (F12) geschaut?
-
Habs mittlerweile gelöst.
Weil ich das select-Element in einem callback verändere und der ja asynchron kommt (also, nachdem load() bereits returned hat) muss das widget neu initialisiert werden.Lösung:
$('#selectfeld').select();
Der Tipp mit der Konsole war trotzdem gut