Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Json in DP - als Dropdown in VIS

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Json in DP - als Dropdown in VIS

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
44 Beiträge 5 Kommentatoren 4.5k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OliverIOO OliverIO

    @bahnuhr

    ja hab ich verstanden. muss da etwas überlegen.
    hab gerade was ausprobiert was leider nicht so funktioniert.
    problem ist, das das abonnieren (also der vorgang, das man über die änderungen informiert wird) von datenpunkten unter der haube von vis nicht ganz so simple ist, daher wollte ich über ein hilfswidget dort die änderung mit browser mitteln abfangen. leider löst die änderung aber nicht das richtige event aus.
    muss mal nochmal in ruhe schauen. kann aber noch ein paar tage dauern, da ich nächste woche nicht da bin um was auszuprobieren

    bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #13

    @oliverio

    Danke trotzdem schon einmal, dass du dir Gedanken machst.
    Nur keine Eile.


    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
    Danke.
    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
    ScreenToGif :https://www.screentogif.com/downloads.html

    1 Antwort Letzte Antwort
    0
    • OliverIOO OliverIO

      @bahnuhr

      ja hab ich verstanden. muss da etwas überlegen.
      hab gerade was ausprobiert was leider nicht so funktioniert.
      problem ist, das das abonnieren (also der vorgang, das man über die änderungen informiert wird) von datenpunkten unter der haube von vis nicht ganz so simple ist, daher wollte ich über ein hilfswidget dort die änderung mit browser mitteln abfangen. leider löst die änderung aber nicht das richtige event aus.
      muss mal nochmal in ruhe schauen. kann aber noch ein paar tage dauern, da ich nächste woche nicht da bin um was auszuprobieren

      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von bahnuhr
      #14

      @oliverio

      Ne andere Idee.
      Könnte man per JS den aktivierten Wert des Widget ändern.

      </style>
      <select id="mydropdown" name="mydropdown" size="1" onchange="javascript:writeDP(this)" >
      <% for (var i = 0; i<data.length;i++) { %>
        <option><%- data[i] %></option>
      <% } %>
      </select>
      

      Also in diesem Abschnitt den Wert "data[i]" per JS setzen.

      Dann müsste ich nur die Scripte ändern.


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • bahnuhrB Online
        bahnuhrB Online
        bahnuhr
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #15

        @OliverIO

        Konntest du schon Überlegungen anstellen ?


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
        ScreenToGif :https://www.screentogif.com/downloads.html

        OliverIOO 1 Antwort Letzte Antwort
        0
        • bahnuhrB bahnuhr

          @OliverIO

          Konntest du schon Überlegungen anstellen ?

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #16

          @bahnuhr
          Erst nächste Woche, sind übers lange Wochenende weg gefahren

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          bahnuhrB 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @bahnuhr
            Erst nächste Woche, sind übers lange Wochenende weg gefahren

            bahnuhrB Online
            bahnuhrB Online
            bahnuhr
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #17

            @oliverio sagte in Json in DP - als Dropdown in VIS:

            @bahnuhr
            Erst nächste Woche, sind übers lange Wochenende weg gefahren

            Danke für die Info.
            Schönes Wo.ende.


            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
            Danke.
            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
            ScreenToGif :https://www.screentogif.com/downloads.html

            OliverIOO 1 Antwort Letzte Antwort
            0
            • bahnuhrB bahnuhr

              Hallo,

              ich habe folgendes json in einem DP:

              [
                "07.06.2022 um 20:43:06.jpg",
                "07.06.2022 um 20:42:50.jpg",
                "07.06.2022 um 20:41:05.jpg",
                "07.06.2022 um 18:06:32.jpg",
                "06.06.2022 um 19:23:25.jpg",
                "06.06.2022 um 19:14:28.jpg",
                "06.06.2022 um 15:52:54.jpg",
                "06.06.2022 um 15:38:36.jpg",
                "06.06.2022 um 14:58:27.jpg",
                "test4.jpg",
                "test3.jpg",
                "test2.jpg"
              ]
              

              Nun möchte die einzelnen Werte per dropdown in einem widget auswählen können.
              Und dann idealerweise die Auswahl in einem anderen DP schreiben (das würde ich aber auch per script machen)

              Gibt es so ein widget ?

              mfg
              Dieter

              F Offline
              F Offline
              fabian.krauss
              schrieb am zuletzt editiert von
              #18

              @bahnuhr

              Hi ich bin mir nicht sicher ob diese Widgets genau das können was du suchst, aber ich weiß das man bei dem Material design widgets viel mit JSON machen kann. Schau es dir mal an :) https://github.com/Scrounger/ioBroker.vis-materialdesign

              Ich hatte z.B. mal per Skript eine JSON automatisch bauen lassen und in die State List geworfen:
              c5996103-0be9-401d-a9e5-ca385c127a77-image.png

              Vielleicht ist ja Input, Autoselect oder Select was für dich.

              bahnuhrB 1 Antwort Letzte Antwort
              1
              • F fabian.krauss

                @bahnuhr

                Hi ich bin mir nicht sicher ob diese Widgets genau das können was du suchst, aber ich weiß das man bei dem Material design widgets viel mit JSON machen kann. Schau es dir mal an :) https://github.com/Scrounger/ioBroker.vis-materialdesign

                Ich hatte z.B. mal per Skript eine JSON automatisch bauen lassen und in die State List geworfen:
                c5996103-0be9-401d-a9e5-ca385c127a77-image.png

                Vielleicht ist ja Input, Autoselect oder Select was für dich.

                bahnuhrB Online
                bahnuhrB Online
                bahnuhr
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #19

                @fabian-krauss

                Danke für die Info.
                Schau ich mir an.


                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                Danke.
                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                ScreenToGif :https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                0
                • bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #20

                  @fabian-krauss

                  Kannst du mir da helfen. habe die mal installiert.
                  Aber im Moment weiß ich nicht wie ich da vorgehen soll.


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • bahnuhrB bahnuhr

                    @oliverio sagte in Json in DP - als Dropdown in VIS:

                    @bahnuhr
                    Erst nächste Woche, sind übers lange Wochenende weg gefahren

                    Danke für die Info.
                    Schönes Wo.ende.

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #21

                    @bahnuhr
                    muss mir hier eine entwickler umgebung für vis bauen.
                    dann kann ich ein drop down widget für vis bauen.

                    im json-template das zu bauen macht kein sinn.
                    wie gesagt das abonnieren von datenpunkten ist etwas aufwändig
                    und die automatismen von vis kann ich von dort aus nicht nutzen.

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    bahnuhrB 1 Antwort Letzte Antwort
                    2
                    • OliverIOO OliverIO

                      @bahnuhr
                      muss mir hier eine entwickler umgebung für vis bauen.
                      dann kann ich ein drop down widget für vis bauen.

                      im json-template das zu bauen macht kein sinn.
                      wie gesagt das abonnieren von datenpunkten ist etwas aufwändig
                      und die automatismen von vis kann ich von dort aus nicht nutzen.

                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #22

                      @oliverio

                      Danke für deinen Einsatz.


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      OliverIOO 1 Antwort Letzte Antwort
                      0
                      • bahnuhrB bahnuhr

                        @oliverio

                        Danke für deinen Einsatz.

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        schrieb am zuletzt editiert von
                        #23

                        @bahnuhr

                        so, manchmal hat man tomaten auf den augen und weiß selber nicht mehr alle funktionen, die man mal implementiert hat.
                        es geht doch mit json_template und sogar sehr einfach.

                        1. das folgende template in json_template eintragen
                          und die werte in zeile 3 und ggfs auch zeile 2 anpassen.
                          zeile 2 nur dann wenn man mehrere dropdowns in einer view einsetzen möchte
                        <% 
                            var selectid="mydropdown"; 
                            var dp_write = "0_userdata.0.test2";
                        %>
                        <script>
                        debugger;
                            var selectid="<%- selectid %>";
                            var dp_write="<%- dp_write %>";
                            
                            function writeDP(el) {
                                debugger;
                                if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                            }
                        
                        </script>
                        <style>
                        #mydropdown {
                            color:green;
                        }
                        </style>
                        </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                        <% debugger; %>
                        <% for (var i = 0; i<data.length;i++) { %>
                          <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                        <% } %>
                        </select>
                        

                        in json_oid den datenpunkt mit der liste an auswahlmöglichkeiten eintragen
                        3)
                        rss_dp[1] den detenpunkt eintragen, in der geschrieben werden soll. es muss der gleiche name sein, wie im template in zeile 3 eingetragen wurde.

                        fertig.

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        bahnuhrB 2 Antworten Letzte Antwort
                        0
                        • OliverIOO OliverIO

                          @bahnuhr

                          so, manchmal hat man tomaten auf den augen und weiß selber nicht mehr alle funktionen, die man mal implementiert hat.
                          es geht doch mit json_template und sogar sehr einfach.

                          1. das folgende template in json_template eintragen
                            und die werte in zeile 3 und ggfs auch zeile 2 anpassen.
                            zeile 2 nur dann wenn man mehrere dropdowns in einer view einsetzen möchte
                          <% 
                              var selectid="mydropdown"; 
                              var dp_write = "0_userdata.0.test2";
                          %>
                          <script>
                          debugger;
                              var selectid="<%- selectid %>";
                              var dp_write="<%- dp_write %>";
                              
                              function writeDP(el) {
                                  debugger;
                                  if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                              }
                          
                          </script>
                          <style>
                          #mydropdown {
                              color:green;
                          }
                          </style>
                          </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                          <% debugger; %>
                          <% for (var i = 0; i<data.length;i++) { %>
                            <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                          <% } %>
                          </select>
                          

                          in json_oid den datenpunkt mit der liste an auswahlmöglichkeiten eintragen
                          3)
                          rss_dp[1] den detenpunkt eintragen, in der geschrieben werden soll. es muss der gleiche name sein, wie im template in zeile 3 eingetragen wurde.

                          fertig.

                          bahnuhrB Online
                          bahnuhrB Online
                          bahnuhr
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von
                          #24

                          @oliverio
                          Danke für die schnelle Info.

                          Habe folgendes eingefügt:

                          <% 
                              var selectid="mydropdown"; 
                              var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                          %>
                          <script>
                          debugger;
                              var selectid="<%- selectid %>";
                              var dp_write="<%- dp_write %>";
                              
                              function writeDP(el) {
                                  debugger;
                                  if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                              }
                          
                          </script>
                          <style>
                          #mydropdown {
                              color:rgb(255,255,255);
                              background:black;
                              font-size:22px;
                          }
                          </style>
                          </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                          <% debugger; %>
                          <% for (var i = 0; i<data.length;i++) { %>
                            <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                          <% } %>
                          </select>
                          

                          Das dropdown öffnet sich in run nicht.


                          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                          Danke.
                          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                          ScreenToGif :https://www.screentogif.com/downloads.html

                          OliverIOO 1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @bahnuhr

                            so, manchmal hat man tomaten auf den augen und weiß selber nicht mehr alle funktionen, die man mal implementiert hat.
                            es geht doch mit json_template und sogar sehr einfach.

                            1. das folgende template in json_template eintragen
                              und die werte in zeile 3 und ggfs auch zeile 2 anpassen.
                              zeile 2 nur dann wenn man mehrere dropdowns in einer view einsetzen möchte
                            <% 
                                var selectid="mydropdown"; 
                                var dp_write = "0_userdata.0.test2";
                            %>
                            <script>
                            debugger;
                                var selectid="<%- selectid %>";
                                var dp_write="<%- dp_write %>";
                                
                                function writeDP(el) {
                                    debugger;
                                    if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                }
                            
                            </script>
                            <style>
                            #mydropdown {
                                color:green;
                            }
                            </style>
                            </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                            <% debugger; %>
                            <% for (var i = 0; i<data.length;i++) { %>
                              <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                            <% } %>
                            </select>
                            

                            in json_oid den datenpunkt mit der liste an auswahlmöglichkeiten eintragen
                            3)
                            rss_dp[1] den detenpunkt eintragen, in der geschrieben werden soll. es muss der gleiche name sein, wie im template in zeile 3 eingetragen wurde.

                            fertig.

                            bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #25

                            @oliverio sagte in Json in DP - als Dropdown in VIS:

                            rss_dp[1]

                            Nachtrag.
                            Was bedeutet dieser DP.
                            Habe gesehen, dass man davon ja mehrere anlegen kann, mit: ...count


                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            OliverIOO 1 Antwort Letzte Antwort
                            0
                            • bahnuhrB bahnuhr

                              @oliverio sagte in Json in DP - als Dropdown in VIS:

                              rss_dp[1]

                              Nachtrag.
                              Was bedeutet dieser DP.
                              Habe gesehen, dass man davon ja mehrere anlegen kann, mit: ...count

                              OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              schrieb am zuletzt editiert von
                              #26

                              @bahnuhr

                              dadurch kannst noch weitere datenpunkte abonnieren.
                              wenn sich einer der eingetragene datenpunkte ändert, werden die anweisungen im template erneut ausgeführt.

                              innerhalb des templates kann der inhalt des datenpunkts über die variable dp[nameDesDatenpunkts] abgerufen werden.

                              in der widget hilfe ist das beschrieben. widget markieren und in vis oben links neben der auswahlliste den I-Knopf drücken

                              Meine Adapter und Widgets
                              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                              Links im Profil

                              1 Antwort Letzte Antwort
                              1
                              • bahnuhrB bahnuhr

                                @oliverio
                                Danke für die schnelle Info.

                                Habe folgendes eingefügt:

                                <% 
                                    var selectid="mydropdown"; 
                                    var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                                %>
                                <script>
                                debugger;
                                    var selectid="<%- selectid %>";
                                    var dp_write="<%- dp_write %>";
                                    
                                    function writeDP(el) {
                                        debugger;
                                        if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                    }
                                
                                </script>
                                <style>
                                #mydropdown {
                                    color:rgb(255,255,255);
                                    background:black;
                                    font-size:22px;
                                }
                                </style>
                                </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                                <% debugger; %>
                                <% for (var i = 0; i<data.length;i++) { %>
                                  <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                <% } %>
                                </select>
                                

                                Das dropdown öffnet sich in run nicht.

                                OliverIOO Offline
                                OliverIOO Offline
                                OliverIO
                                schrieb am zuletzt editiert von
                                #27

                                @bahnuhr
                                ich habe es getestet. bei mir funktionierts.
                                allerdings habe ich vergessen die debugger-anweisungen zu entfernen.
                                wenn du gleichzeitig die developer console geöffnet hattest, dann stopt das skript an der stelle wo diese anweisung steht.
                                hier habe ich es nun entfernt

                                <% 
                                    var selectid="mydropdown"; 
                                    var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                                %>
                                <script>
                                debugger;
                                    var selectid="<%- selectid %>";
                                    var dp_write="<%- dp_write %>";
                                    
                                    function writeDP(el) {
                                        if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                    }
                                
                                </script>
                                <style>
                                #mydropdown {
                                    color:rgb(255,255,255);
                                    background:black;
                                    font-size:22px;
                                }
                                </style>
                                </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                                <% for (var i = 0; i<data.length;i++) { %>
                                  <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                <% } %>
                                </select>
                                

                                Meine Adapter und Widgets
                                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                Links im Profil

                                bahnuhrB T 3 Antworten Letzte Antwort
                                1
                                • OliverIOO OliverIO

                                  @bahnuhr
                                  ich habe es getestet. bei mir funktionierts.
                                  allerdings habe ich vergessen die debugger-anweisungen zu entfernen.
                                  wenn du gleichzeitig die developer console geöffnet hattest, dann stopt das skript an der stelle wo diese anweisung steht.
                                  hier habe ich es nun entfernt

                                  <% 
                                      var selectid="mydropdown"; 
                                      var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                                  %>
                                  <script>
                                  debugger;
                                      var selectid="<%- selectid %>";
                                      var dp_write="<%- dp_write %>";
                                      
                                      function writeDP(el) {
                                          if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                      }
                                  
                                  </script>
                                  <style>
                                  #mydropdown {
                                      color:rgb(255,255,255);
                                      background:black;
                                      font-size:22px;
                                  }
                                  </style>
                                  </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                                  <% for (var i = 0; i<data.length;i++) { %>
                                    <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                  <% } %>
                                  </select>
                                  
                                  bahnuhrB Online
                                  bahnuhrB Online
                                  bahnuhr
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #28

                                  @oliverio

                                  Oh mann,

                                  Problem war der z-index
                                  Jetzt geht dropdown auf.

                                  Ich teste es nun mal und geb Rückinfo.

                                  Danke vorab.


                                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                  Danke.
                                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                  ScreenToGif :https://www.screentogif.com/downloads.html

                                  1 Antwort Letzte Antwort
                                  0
                                  • OliverIOO OliverIO

                                    @bahnuhr
                                    ich habe es getestet. bei mir funktionierts.
                                    allerdings habe ich vergessen die debugger-anweisungen zu entfernen.
                                    wenn du gleichzeitig die developer console geöffnet hattest, dann stopt das skript an der stelle wo diese anweisung steht.
                                    hier habe ich es nun entfernt

                                    <% 
                                        var selectid="mydropdown"; 
                                        var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                                    %>
                                    <script>
                                    debugger;
                                        var selectid="<%- selectid %>";
                                        var dp_write="<%- dp_write %>";
                                        
                                        function writeDP(el) {
                                            if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                        }
                                    
                                    </script>
                                    <style>
                                    #mydropdown {
                                        color:rgb(255,255,255);
                                        background:black;
                                        font-size:22px;
                                    }
                                    </style>
                                    </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                                    <% for (var i = 0; i<data.length;i++) { %>
                                      <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                    <% } %>
                                    </select>
                                    
                                    bahnuhrB Online
                                    bahnuhrB Online
                                    bahnuhr
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #29

                                    @oliverio

                                    Super, funktioniert einwandfrei.
                                    Haste ein super widget entwickelt.

                                    mfg
                                    Dieter


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    1 Antwort Letzte Antwort
                                    1
                                    • OliverIOO OliverIO

                                      @bahnuhr
                                      ich habe es getestet. bei mir funktionierts.
                                      allerdings habe ich vergessen die debugger-anweisungen zu entfernen.
                                      wenn du gleichzeitig die developer console geöffnet hattest, dann stopt das skript an der stelle wo diese anweisung steht.
                                      hier habe ich es nun entfernt

                                      <% 
                                          var selectid="mydropdown"; 
                                          var dp_write = "javascript.0.Sonstige.Haustuer.Bild_vom";
                                      %>
                                      <script>
                                      debugger;
                                          var selectid="<%- selectid %>";
                                          var dp_write="<%- dp_write %>";
                                          
                                          function writeDP(el) {
                                              if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                          }
                                      
                                      </script>
                                      <style>
                                      #mydropdown {
                                          color:rgb(255,255,255);
                                          background:black;
                                          font-size:22px;
                                      }
                                      </style>
                                      </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP(this)" >
                                      <% for (var i = 0; i<data.length;i++) { %>
                                        <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                      <% } %>
                                      </select>
                                      
                                      T Offline
                                      T Offline
                                      trojanhector
                                      schrieb am zuletzt editiert von
                                      #30

                                      @oliverio
                                      Hallo,
                                      erstmal vielen Dank für das Widget. So etwas habe ich gesucht.
                                      Grundsätzlich funktioniert es bei mir. Jedoch nur als einzelnes Dropdown. Wenn ich mehrere DDs in einem VIS verwende wird immer ein anderes Widget mit verändert und auch der Wert im DP. Ich verwende 7 Dropdowns.
                                      Die Variablen selectid und dp_write sind überall unterschiedlich und auch rss_dp[1].

                                      Ein weiterer Punkt ist der <Style>. Den bei allen Dropdowns nachzuhalten ist ein bisschen müßig. Läßt sich das über den CSS-Tab regeln?

                                      Und zuletzt noch eine Frage der Datenherkunft und Speicherung.
                                      Ich habe eine Jsonliste mit id und name. Also klassisches Key-Value Paar. Angezeigt bekommen möchte ich den Value (das klappt auch), aber gespeichert werden soll der Key. Kann man das einstellen? Ich habe in der Hilfe zu den SelectedOptions den Punkt zu den SelectedIndex gelesen, aber das trifft es nicht. Ich möcht immer die Kontrolle über den Key haben.

                                      Beste Grüße
                                      Hector

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • T trojanhector

                                        @oliverio
                                        Hallo,
                                        erstmal vielen Dank für das Widget. So etwas habe ich gesucht.
                                        Grundsätzlich funktioniert es bei mir. Jedoch nur als einzelnes Dropdown. Wenn ich mehrere DDs in einem VIS verwende wird immer ein anderes Widget mit verändert und auch der Wert im DP. Ich verwende 7 Dropdowns.
                                        Die Variablen selectid und dp_write sind überall unterschiedlich und auch rss_dp[1].

                                        Ein weiterer Punkt ist der <Style>. Den bei allen Dropdowns nachzuhalten ist ein bisschen müßig. Läßt sich das über den CSS-Tab regeln?

                                        Und zuletzt noch eine Frage der Datenherkunft und Speicherung.
                                        Ich habe eine Jsonliste mit id und name. Also klassisches Key-Value Paar. Angezeigt bekommen möchte ich den Value (das klappt auch), aber gespeichert werden soll der Key. Kann man das einstellen? Ich habe in der Hilfe zu den SelectedOptions den Punkt zu den SelectedIndex gelesen, aber das trifft es nicht. Ich möcht immer die Kontrolle über den Key haben.

                                        Beste Grüße
                                        Hector

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von OliverIO
                                        #31

                                        @trojanhector
                                        Für jedes dropdown muss eine andere selectid definiert werden
                                        Es reicht mydropdown einfach durch zu nummerieren

                                        Nachtrag, ah mehrere habebja alle den gleichen scope.
                                        Da müsste ich was umstellen. Aber Wahrscheinlichkeit nicht nicht vor Montag

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        OliverIOO 1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @trojanhector
                                          Für jedes dropdown muss eine andere selectid definiert werden
                                          Es reicht mydropdown einfach durch zu nummerieren

                                          Nachtrag, ah mehrere habebja alle den gleichen scope.
                                          Da müsste ich was umstellen. Aber Wahrscheinlichkeit nicht nicht vor Montag

                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          schrieb am zuletzt editiert von
                                          #32

                                          @oliverio

                                          das folgende template müsste nun bei beliebig vielen dropdowns funktionieren.
                                          jedes dropdown benötigt sein eigenes selectid. bitte nur buchstaben und zahlen dafür verwenden, da daraus ein individueller funktionsname gebildet wird

                                          <% 
                                              var selectid="mydropdown1"; 
                                              var dp_write = "0_userdata.0.test.test1";
                                          %>
                                          <script>
                                              let selectid="<%- selectid %>";
                                              let dp_write="<%- dp_write %>";
                                              
                                              function writeDP<%- selectid %>(el) {
                                                  debugger;
                                                  if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
                                              }
                                          
                                          </script>
                                          <style>
                                          #mydropdown {
                                              color:rgb(255,255,255);
                                              background:black;
                                              font-size:22px;
                                          }
                                          </style>
                                          </style><select id="<%- selectid %>" name="<%- selectid %>" size="1" onchange="javascript:writeDP<%- selectid %>(this)" >
                                          <% for (var i = 0; i<data.length;i++) { %>
                                            <option <%- ((dp[dp_write]==data[i]) ? "selected":"") %>><%- data[i] %></option>
                                          <% } %>
                                          </select>
                                          

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

                                          T M 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          763

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe