Показать сообщение отдельно
  #15 (permalink)  
Старый 01.12.2016, 16:04
Аспирант
Отправить личное сообщение для allexmak Посмотреть профиль Найти все сообщения от allexmak
 
Регистрация: 13.12.2015
Сообщений: 45

хорошо, работа всего кода такая, открываем страничку принимаем гет запросом состояния всех кнопок потом нажимаем на кнопки и отправляем изменение.

Вот часть функции приема , туда я добавляю состояние кнопки(on,off) в span (в Button и правда будет лишнее)
и меняем состояние value в кнопке
//Leds  
          for (var i=0; i < 16; i++) {
            if (this.responseXML.getElementsByTagName('LED')[i].childNodes[0].nodeValue === "on") {
              document.getElementById("ld"+i).innerHTML = "ON";
              LED_state[i] = 1;
              //document.getElementById("LED"+i).value = 1;
            } else {
              document.getElementById("ld"+i).innerHTML = "OFF";
              LED_state[i] = 0;
              //document.getElementById("LED"+i).value = 0;
            }
          }


В итоге при клике формируем только переменную strButton которая потом отправляется(map().join('&') оказывается не нужен, все работает проверял)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script>
var strButton;//отправка состояния
document.addEventListener('DOMContentLoaded', function(){
    document.querySelector('#led').addEventListener('click', function(e){
        var bt = e.target, f;
        while (bt.tagName != 'DIV') {
            if(bt.tagName == 'BUTTON') {
                f = bt.value ^ 1;
                strButton = '&'+bt.name+'='+bt.value;
                document.querySelector('#test').innerHTML = strButton;//временно
                return;
            }
            bt = bt.parentNode;
        }
    });
});
</script>    
</head>
 
<body>
<div id="led">
    <p>30: <button name="LED1" value="0"> button </button> <span class="value">...</span></p>
    <p>31: <button name="LED2" value="0"> button </button> <span class="value">...</span></p>
    <p>32: <button name="LED3" value="0"> button </button> <span class="value">...</span></p>
</div>
 
<div id="test"></div> 
</body>
</html>

Последний раз редактировалось allexmak, 01.12.2016 в 16:07.
Ответить с цитированием