Выполнять функцию как состояние checkbox

Хорошие люди, оказывается, что у меня есть тема, я делаю интерфейс, чтобы контролировать arduino, который у меня есть, и что я сделал, он состоял с языком сценариев JavaScript в том, чтобы посылать просьбу GET, когда нажимают на кнопку зажигать и другая, нажав на кнопку отключать, что я хочу, состоит в том, чтобы использовать один checkbox и что, выбрав это, выполнил функцию on() и в des выбирать функцию off()

<script type="text/javascript">

function on2() {
  if (window.XMLHttpRequest) {
   xmlhttp = new XMLHttpRequest();
  } else {
   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
  var url = "http://192.168.0.104/r2=ON";
  xmlhttp.open("GET", url, false);
  xmlhttp.send(null);
  var respo= xmlhttp.responseText;
  
 }

 function off2() {
  if (window.XMLHttpRequest) {
   xmlhttp = new XMLHttpRequest();
  } else {
   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
  var url = "http://192.168.0.104/r2=OFF";
  xmlhttp.open("GET", url, false);
  xmlhttp.send(null);
  var respo= xmlhttp.responseText;
  
 }
</script>
4
задан 14.03.2017, 22:52
0 ответов

Ты можешь реализовывать условие подтверждая, - ли checkbox в true или в false с признаком checked checkbox.

Потом ты можешь распределять событие checkbox для того, чтобы он работал, когда он изменил Ваше состояние посредством функции addEventListener и показывая ему, что он работал с событием change.

Пример:

function on(){
  console.log("Hemos pulsado en on");
}

function off(){
  console.log("Hemos pulsado en off");
}

var checkbox = document.getElementById('checkbox');

checkbox.addEventListener("change", comprueba, false);

function comprueba(){
  if(checkbox.checked){
      on();
  }else{
     off();
  }
}
<input id="checkbox" type="checkbox">
5
ответ дан 03.12.2019, 17:54

Ты можешь делать это так:

var checkBox = document.querySelector('#iddetucheckbox');
checkBox.addEventListener('change', verificarEstado, false);

function verificarEstado(e) {
    if(e.target.checked){
        on();
    }else{
        off();
    }
}
0
ответ дан 03.12.2019, 17:54

Теги

Похожие вопросы