NEWS
Gelöst: Hinzufügen von Werten in Selection Feld im Setup
-
Hallo!
Ich bin grad dran, die Version 1.1.0 für den Meteoalarm Adapter zu erstellen. Hier möchte ich gerne, dass die User den Link nicht mehr auf der Website suchen müssen, sondern über eine Länder-und Bundesländerauswahl der Link automatisch abgerufen wird. Dazu wird nach der Auswahl des Landers ein Button gedrückt, der die Regionen sowie Links als XML abruft.
Nun habe ich aber das Problem, das ich es nicht hinbekomme, das Drop-Down Auswahlfeld zu befüllen. Ich hab mir dazu schon den MiHome Adapter angesehen, konnte aber nicht rausfinden, wie es dort funktioniert. Ich hab auch schon gegoogelt, aber auch ein Append hat hier nicht funktioniert.
$('#regions').append($option);
Hat jemand von euch einen Plan, wie dies umzusetzen ist?
Danke,
Jack -
@jackblackson das ist schon richtig mit append, aber du musst danach das Select Element neu initialisieren.
Schau dazu mal in die Doku von Materializecss. -
@Jey-Cee sagte in Hinzufügen von Werten in Selection Feld im Setup:
@jackblackson das ist schon richtig mit append, aber du musst danach das Select Element neu initialisieren.
Schau dazu mal in die Doku von Materializecss.Danke - ich hab mir das ansehen...aber irgendwie fehlt mir da noch ein Brocken Wissen.
Ich hab das mit dem "Destroy" versucht. Hab zuerst die Funktion eingefügt:
document.addEventListener('DOMContentLoaded', function() { var elems = document.querySelectorAll('select'); var instances = M.FormSelect.init(elems, options); });
So sieht mein Selectionfeld am Anfang aus:
<div class="row"> <div class="col s12 m12 l12 input-field"> <select class="value" id="regions" type="text"> <option value="" disabled selected class="translate">Please select Country first</option> </select> <label class="translate" for="regions">regions</label> </div> </div>
Danach möchte ich hier Werte hinzufügen:
$('#regions').append('Test'); instance.destroy();
Bekomme dann aber die Fehlermeldung:
-
@jackblackson du musst erstmal die Instance auswählen auf die du destroy anwenden willst. Und danach musst du sie neu Initialisieren.
let instance = M.FormSelect.getInstance($('#select-id')); instance.destroy(); instances = M.FormSelect.init($('#select-id'));
-
@Jey-Cee Danke - das war der Hinweis der mir gefehlt hat, funktioniert jetzt!