Tuve un problema al cambiar un botón en ambos sentidos, haciendo clic en él y cambiándolo por una función js que reacciona en los mensajes mqtt recibidos y alterna el botón. La primera parte funciona, la segunda no. Aquí está mi html
<label class="switch"> <input type="checkbox" value="On" id="onoff" onclick="onoff_dev();"> <span class="slider round"></span> </label>El js para alternar el botón:
function onoff_dev() { currentvalue = document.getElementById('onoff').value; if (currentvalue == "Off") { document.getElementById("onoff").value = "On"; switch("0"); } else { document.getElementById("onoff").value = "Off"; switch("1"); } }Y aquí la función, que se ejecuta cuando llega un mensaje mqtt. El mensaje es 'r_message = On' o 'r_message = Off' Debería cambiar el botón deslizante, pero "document.getElementById('onoff').value = "On";" no actualiza el valor del botón.
function onMessageArrived(r_message) { if (r_message == "On") { document.getElementById('onoff').value = "On"; } if (r_message == "Off") { document.getElementById('onoff').value = "Off"; } }¿Podrías ayudarme? ¡Gracias!