Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Ändern eines Dropdown-Feldes

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Ändern eines Dropdown-Feldes

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      lugge86 last edited by lugge86

      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

      UncleSam 1 Reply Last reply Reply Quote 0
      • UncleSam
        UncleSam Developer @lugge86 last edited by

        @lugge86 Mal in die Browser Konsole (F12) geschaut?

        L 1 Reply Last reply Reply Quote 0
        • L
          lugge86 @UncleSam last edited by

          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 🙂

          1 Reply Last reply Reply Quote 0
          • First post
            Last post

          Support us

          ioBroker
          Community Adapters
          Donate

          490
          Online

          31.9k
          Users

          80.2k
          Topics

          1.3m
          Posts

          jquery
          2
          3
          151
          Loading More Posts
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes
          Reply
          • Reply as topic
          Log in to reply
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
          The ioBroker Community 2014-2023
          logo