Сообщение от djsidmsps
|
024 setTimeout('process()',1000);
|
Зачем вам вычислять выражение, когда у вас есть готовая функция!
setTimeout(process, 1000);
Пока не придёт ответ, галочка должна находиться в заблокированном состоянии, чтобы не меняли её состояние, и чтобы не запускалась функция отправки... притом если не удалось связаться с сервером, то состояние возвращается на место!
<label><input type="checkbox" onchange="lightSwitch(this)">Принудительное освещение</label>
<script>
function lightSwitch(checkbox) {
var initialPosition = checkbox.checked;
var url = "/Ligntonoff?state=" + (initialPosition ? 1 : 0);
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if(xhr.readyState == 4) {
checkbox.disabled = false;
if(xhr.status === 200) checkbox.checked = initialPosition;
}
};
xhr.open("GET", url, true);
xhr.send();
checkbox.checked = !initialPosition;
checkbox.disabled = true;
}
</script>