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
    15
    1
    2.6k

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
    ersteinmal ist die auswahl so gespeichert, wie es der browser immer macht.
    abfragen kann man den wert in javascript.
    wo willst du ihn den haben?

    stylen kann man das html dann mit css, welches man über die üblichen methoden in das template mit einfügen kann (also etweder das style-attribut

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

    oder mit eingebettetem css-abschnit
    hier sollte man allerdings vorsichtig sein, da die css-anweisungen global für die ganze seite gelten und daher mit entsprechenden eindeutigen namen ordentlich abgegrenzt werden sollten, damit es keine seiteneffekte auf andere elemente gibt

    <style>
    #mydropdown {
        color:green;
    }
    </style>
    <select id="mydropdown" name="mydropdown" size="1" >
    <% for (var i = 0; i<data.length;i++) { %>
      <option><%- data[i] %></option>
    <% } %>
    </select>
    
    bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #8

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

    abfragen kann man den wert in javascript.
    wo willst du ihn den haben?

    ist mir jetzt nicht klar wo ich die Auswahl sehen kann.
    Am besten wäre es wenn der ausgewählte Punkte in einem anderen DP gespeichert wird.


    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 Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von OliverIO
      #9

      @bahnuhr

      oben noch den datenpunktnamen eintragen wohin geschrieben werden soll

      <script>
          var dp_write="0_userdata.0.test2";
          function writeDP(el) {
              if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
          }
      </script>
      <style>
      #mydropdown {
          color:green;
      }
      </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>
      

      zur Erläuterung.
      Wir definieren eine eigene Funktion writeDP, die für uns das schreiben des Datenpunkts übernimmt.

      Zusätzlich definieren wir für das Select-Element den trigger onChange, der immer dann aufgerufen wird, wenn sich die Auswahl in der Liste ändert.

      Sobald das Ereignis eintritt wird die Funktion writeDP aufgerufen und als Parameter wird eine Referenz auf das HTMLElement (Hier select) übergeben.

      Im Selectelement ist im Property selectedOptions eine Liste aller ausgewählter Elemente gespeichert. Wir nehmen hier immer das erste und entnehmen dort den angezeigten Text über das Property text

      el.selectedOptions[0].text
      

      https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/selectedOptions
      https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionElement

      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
      1
      • OliverIOO OliverIO

        @bahnuhr

        oben noch den datenpunktnamen eintragen wohin geschrieben werden soll

        <script>
            var dp_write="0_userdata.0.test2";
            function writeDP(el) {
                if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
            }
        </script>
        <style>
        #mydropdown {
            color:green;
        }
        </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>
        

        zur Erläuterung.
        Wir definieren eine eigene Funktion writeDP, die für uns das schreiben des Datenpunkts übernimmt.

        Zusätzlich definieren wir für das Select-Element den trigger onChange, der immer dann aufgerufen wird, wenn sich die Auswahl in der Liste ändert.

        Sobald das Ereignis eintritt wird die Funktion writeDP aufgerufen und als Parameter wird eine Referenz auf das HTMLElement (Hier select) übergeben.

        Im Selectelement ist im Property selectedOptions eine Liste aller ausgewählter Elemente gespeichert. Wir nehmen hier immer das erste und entnehmen dort den angezeigten Text über das Property text

        el.selectedOptions[0].text
        

        https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/selectedOptions
        https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionElement

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

        @oliverio

        Mensch bist du fit in diesem Thema.
        Danke vielmals.
        Werde ich ausprobieren.


        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

          oben noch den datenpunktnamen eintragen wohin geschrieben werden soll

          <script>
              var dp_write="0_userdata.0.test2";
              function writeDP(el) {
                  if (el.selectedOptions[0].text) vis.setValue(dp_write,el.selectedOptions[0].text);
              }
          </script>
          <style>
          #mydropdown {
              color:green;
          }
          </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>
          

          zur Erläuterung.
          Wir definieren eine eigene Funktion writeDP, die für uns das schreiben des Datenpunkts übernimmt.

          Zusätzlich definieren wir für das Select-Element den trigger onChange, der immer dann aufgerufen wird, wenn sich die Auswahl in der Liste ändert.

          Sobald das Ereignis eintritt wird die Funktion writeDP aufgerufen und als Parameter wird eine Referenz auf das HTMLElement (Hier select) übergeben.

          Im Selectelement ist im Property selectedOptions eine Liste aller ausgewählter Elemente gespeichert. Wir nehmen hier immer das erste und entnehmen dort den angezeigten Text über das Property text

          el.selectedOptions[0].text
          

          https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/selectedOptions
          https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionElement

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

          @oliverio
          Danke klappt super.

          Jetzt hab ich noch ne Besonderheit.
          Durch dein script "writeDP(el)" wird ja der andere DP geändert.

          Jetzt wird der andere DP aber durch andere JS auch geändert.
          Soll heißen: Der Wert des anderen DP ändert sich nicht nur durch dein Widget sondern durch andere Scripte

          Frage:
          Kann man einbauen:
          Wenn sich der Wert des "anderen DP" durch ein anderes Script ändert, dass dann der Focus bei dem Widget ebenfalls wieder auf den gleichen Wert zeigt.
          Oder ist das zu viel des Guten.

          War das verständlich ?


          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 klappt super.

            Jetzt hab ich noch ne Besonderheit.
            Durch dein script "writeDP(el)" wird ja der andere DP geändert.

            Jetzt wird der andere DP aber durch andere JS auch geändert.
            Soll heißen: Der Wert des anderen DP ändert sich nicht nur durch dein Widget sondern durch andere Scripte

            Frage:
            Kann man einbauen:
            Wenn sich der Wert des "anderen DP" durch ein anderes Script ändert, dass dann der Focus bei dem Widget ebenfalls wieder auf den gleichen Wert zeigt.
            Oder ist das zu viel des Guten.

            War das verständlich ?

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

            @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

            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
            1
            • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          554

                                          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