В приведенном ниже коде используются JavaScript и файлы cookie для сохранения состояния флажков при отправке или обновлении страницы.
Javascript:
<script>
document.addEventListener("DOMContentLoaded", function(event) {
var chks = document.querySelectorAll('input[name="search[]"]');
for (var i = 0; i < chks.length; i++) {
if (getCookie('search[' + chks[i].value + ']') == 'true') {
chks[i].checked = true;
}
}
for (var i = 0; i < chks.length; i++) {
chks[i].addEventListener('click', function() {
document.cookie = "search[" + this.value + "]=" + this.checked + "; expires=Thu, 18 Dec 2018 12:00:00 UTC; path=/";
});
}
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
});
</script>