NEWS
SetState() aus Vis Script
-
Hallo zusammen,
ich bin neu hier und versuche nun ein vis mit css und script zu basteln.
! function submitForm(e) {
! if (e.value === "")
! {
! alert("Enter a PIN");
! }
! else
! {
! console.log('test');
! alert( "Your PIN has been sent! - " + e.value );
! setState("Alarmanlage.0.PinPad.Status",true);
! setState("Alarmanlage.0.PinPad.Pin",e.value);
! data = {
! pin: e.value
! }
Leider funktioniert weder die console.log() Funktion noch setState(). Woran kann das liegen?Ich habe ein HTML Widget auf einem Vis eingefügt und das Script ist im Reiter Script eingetragen
Danke für eure Hilfe!
-
Hallo,
kurz von unterwegs. Setstate() ist ein Befehl aus dem JavaScript-Adapter von ioBroker und nicht verwendbar in VIS. Sieh dir mal die Doku zum Adapter auf github an. Ebenso ist die Doku zu VIS auf Github empfehlenswert.
Gruß
Pix
-
Ich hatte das gleiche Probleme.
Gelöst habe ich dies mit dieser Funktion:function setzeWert(variablenName, Wert){ this.servConn._socket.emit('setState', variablenName, Wert); }
Ich glaube das ganze erklärt sich von selbst
Schöne Ostern
Sepp -
@SVallant
Vielen Dank dafür, dass du deine Lösung hier gepostet hast. Das eröffnet mir ganz neue Möglichkeiten mit meinen html Tabellen -
hmm, bei mir funktioniert das nicht. Was mache ich falsch?
this.servConn._socket.emit('setState', 'javascript.0.value_state', 'a');
EDIT:
doch, es funktioniert, aber nur beim erneuten Aufruf der Seite (JavaScript der View) -
@jampr
Nur ein Hinweis:
Der Befehl dürfte verkürzt so auch schon funktionieren:servConn.setState(deineObjID, "deinWert");
-
schick, danke schön