Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Select-Feld zur Laufzeit ändern

    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

    Select-Feld zur Laufzeit ändern

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

      Servus,

      in meiner index_m.html habe ich ein select-Feld (Dropdown-Feld).
      Zur Auswahl stehen 5 verschiedene Werte.
      Daneben habe ich einen Button plaziert. Ziel der Übung ist es, durch einen Klick auf den Button das select-Feld auf den Wert "1" zu setzen, unabhängig davon was der User davor ausgewählt hat.

      Mein Problem:
      der click()-Handler kommt zwar, das select-Feld behält aber seinen Wert bei. Ich schaff es nicht, per Skript dem Feld einen neuen Wert zuzuweisen.
      Der Code den ich benutze funktioniert auf jsfiddle.net wunderbar.

      Auszug aus index_m.html:

      <div class="input-field col s6">
         <select id="myselect">    
             <option value="1">1</option>
             <option value="2">2</option>
             <option value="3">3</option>
             <option value="4">4</option>
             <option value="5">5</option>
         </select>
      </div>
      
      <div class="input-field col s6">
         <a id="mybutton" class="btn-floating waves-effect waves-light green tooltipped center-align hoverable translateT" title="my Button">
         <i class="material-icons large">leak_add</i></a>
      </div>
      

      Und in der load()-Funktion:

          $('mybutton').click(function() {
              myTestVar = myTestVar + 1;
              $('#myselect').val("1");
              $('#myselect').material_select();
              onChange();
          });
              
          $('#myselect').on("change", function () {
              onChange();
          });
      

      Wo ist mein Fehler?
      Was muss ich machen damit sich der Wert des select-Feldes ändert?
      Hab schon meinen Code wahllos mit onChange() zugepflastert, bringt auch nichts.

      Jemand ne Idee?

      VIele Grüße,
      lugge

      UncleSam blauholsten 2 Replies Last reply Reply Quote 0
      • UncleSam
        UncleSam Developer @lugge86 last edited by

        @lugge86 Verwendest du MaterializeCSS? Wenn ja: https://materializecss.com/select.html
        Ansonsten: https://www.google.com/amp/s/www.geeksforgeeks.org/how-to-change-selected-value-of-a-drop-down-list-using-jquery/amp/

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

          @UncleSam
          Hi UncluseSam,

          gut, die links kenn ich alle schon, aber trotzdem Danke dafür.
          Ich glaub sogar dass es wenig Links zu diesem Thema gibt über die ich nicht schon gestolpert bin, das Thema drückt mich ja schon seit 2 Wochen und blockiert mir meine Adapterentwicklung.
          Ich verwende material_css, immerhin verwende ich ja wie (fast) jeder die index_m.html aus dem Adaptertemplate.

          Mal zwei konkrete Fragen:

          1. Kennt jemand einen Adapter wo der angezeigte Wert eines select-Feldes durch ein Event verändert wird?
          2. Wann genau muss eigentlich die onChange()-Funktion aufgerufen werden und wieso?

          Viele Grüße,
          lugge

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

            @lugge86 sagte in Select-Feld zur Laufzeit ändern:

            1. Wann genau muss eigentlich die onChange()-Funktion aufgerufen werden und wieso?

            Die Callback Funktion signalisiert dem Broker das es eine Änderung bei der Konfig gegeben hat und damit wird z.B. die speichern Taste aktiviert.

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

              @lugge86

              $('#mybutton').on('click', function() {
              			$('#myselect').val("1");
              			$('#myselect').select();
              			onChange();
              });
              
              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              485
              Online

              31.9k
              Users

              80.2k
              Topics

              1.3m
              Posts

              html
              3
              5
              283
              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