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. Jahreszahl in der Objekt ID Automatisch ersetzen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    925

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Jahreszahl in der Objekt ID Automatisch ersetzen

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
1 Beiträge 1 Kommentatoren 184 Aufrufe 4 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.
  • Jey CeeJ Online
    Jey CeeJ Online
    Jey Cee
    Developer
    schrieb am zuletzt editiert von
    #1

    Ich wurde gefragt ob es möglich ist die Jahreszahl in einer Objekt ID mit einem Binding zu ersetzen. Soweit ich weis geht das nicht, deswegen hab ich ein Skript angepasst um das Problem zu lösen.
    Für den fall das noch jemand anderes es brauchen kann Veröffentliche ich hier die Lösung.

    Im Widget unter Generell bei CSS Klassse gibt man year ein.

    Bei der Objekt ID ersetzt man die Jahreszahl durch <year>.

    0_userdata.0.<year>
    

    Skript (VIS Editor):

    const timeout = 50;
    
    $(document).ready(function(){
        setTimeout( () => {
            replaceYear();
        }, timeout)
    
    });
    
    
    function replaceYear(){
    
    let year = new Date().getFullYear();
    
    const yearElements = document.querySelectorAll('div[class*="year"]');
    
    for (let i = 0; i <= yearElements.length - 1; i++) {
            const arr = [ ...yearElements[i].classList ];
            const propName = arr.find(checkForYear).replace('year', '');
            const id = yearElements[i].lastElementChild.lastElementChild.dataset.oid.replace('<year>', year);
    
            console.log(id);
    
              vis.conn.getStates(id, (err, state) => {
                  if (!err){
                      yearElements[i].lastElementChild.lastElementChild.outerText = state[id].val;
                  }
    
                })
        }
    
    }
    
    function checkForYear(className) {
        const regex = new RegExp('year');
        let finding = className.match(regex);
    
        return finding;
    }
    

    Persönlicher Support
    Spenden -> paypal.me/J3YC33

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


    Support us

    ioBroker
    Community Adapters
    Donate

    749

    Online

    32.6k

    Benutzer

    82.2k

    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