При изменении цвета записывать значение в php переменную
Доброго времени суток!
Есть чекбокс <input type="checkbox" form="ORDER_FORM" name="sbor" id="sbor" value = "22" onclick="highlight(this);" /> При клике на данный чекбокс происходит смена цвета <script> function changeTrColor() { var elem = document.getElementsByTagName('input'); for(i = 0; i < elem.length; i++) { var tr = elem[i].parentNode.parentNode; if (elem[i].checked) tr.style.background = "#b2ffb2"; } } window.onload = changeTrColor; function highlight(chkbox) { chkbox.parentNode.parentNode.style.background = (chkbox.checked ? "#b2ffb2" : "#e0ffff"); } </script> Возможно ли сделать так, если чекбокс отмечен и цвет #b2ffb2, тогда записать значение (например 1) в php переменную и чтобы при обновлении страницы отмеченный чекбокс не сбрасывался? Спасибо. На данный момент при обновлении страницы чекбокс сбрасывается. |
Цитата:
А можно записать в куки или локальное хранилище. Тогда можно контролировать цвет на клиенте. ;) |
ksa, спасибо что откликнулись )
Возможно предоставить пример с вариантом "А можно записать в куки или локальное хранилище" на основании предоставленного кода? |
Цитата:
https://learn.javascript.ru/cookie https://ruseller.com/lessons.php?id=593 По хранилищу... http://htmlbook.ru/html5/storage https://web.izjum.com/javascript-localstorage |
ksa, к примеру, нашли значение при отмеченном чекбоксе
function changeTrColor() { var elem = document.getElementsByTagName('sbor'); for(i = 0; i < elem.length; i++) { var tr = elem[i].parentNode.parentNode; var checked = elem[i].checked; if (elem[i].checked) tr.style.background = "#b2ffb2"; document.getElementsByTagName('sbor')[0].value = 5; } } // Вызываем функцию changeTrColor при загрузке страницы window.onload = changeTrColor; function highlight(chkbox) { chkbox.parentNode.parentNode.style.background = (chkbox.checked ? "#b2ffb2" : "#e0ffff"); if (chkbox.checked) { var Sbor = 1; if (Sbor == 1) { //var SborTrue = 2; document.cookie = "SborTrue=2";//добавлено значение 2 в куки function get_cookie (cookie_name) { var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' ); if ( results ) return ( unescape ( results[2] ) ); else return null; } var SborTrue = get_cookie ( "SborTrue" ); alert(SborTrue); } } } Подскажите, пожалуйста, как это значение записать в php переменную? После обновления страницы чекбокс слетает :( |
Цитата:
https://learn.javascript.ru/ajax-xmlhttprequest На сервере прочитать эту переменную и сделать выводы. |
Ну вообще не обязательно на сервер пулять дополнительно. Кук достаточно. Просто сервер должен сам брать значение из кук, если есть.
|
Aetae, спасибо что откликнулись )
А не могли бы Вы на моем примере показать как сделать ) |
JS:
function highlight(chkbox){ chkbox.parentNode.parentNode.style.background = (chkbox.checked ? "#b2ffb2" : "#e0ffff"); document.cookie = 'sbor=' + Number(chkbox.checked) + '; path=/; expires=Mon, 31 Jan 4000 00:00:00 GMT'; } PHP: <input type="checkbox" form="ORDER_FORM" name="sbor" id="sbor" value = "22" onclick="highlight(this);" <?=$_COOKIE['sbor'] ? 'checked' : ''?> /> |
Aetae, спасибо Вам огромное, то что нужно :) Очень сильно помогли, ещё раз спасибо :thanks:
|
Часовой пояс GMT +3, время: 05:57. |