Исходя из моего предыдущего вопроса здесь и здесь , я обнаружил, что могу установить cookie с помощью javascript. Я хочу объединить его с jquery, чтобы установить состояние cookie для переключаемых строк таблицы. Я хочу сохранить скрытые ряды скрытыми после перезагрузки.
Вот чего я достиг на данный момент:
// Load cookies if any
if(readCookie('togState')) {
$('table#toggle tr.' + readCookie('togState')).hide();
}
$(function() {
$('table#toggle tr.container').click(function() {
var idTog = $(this).attr('id');
$(this).toggleClass('off').nextAll('.' + idTog).toggle();
setCookie('togState', idTog, 30);
alert('Cookies: ' + readCookie('togState'));
});
});
Родитель: <tr id="parent-1" class="container">
Следующие дети: <tr class="contained parent-1">
и т. Д.
Как видите, cookie читается, но не устанавливается при обновлении браузера. Что я делаю не так?
Что мне нужно, так это скрыть все переключаемые строки (имеющие классы, равные идентификатору контейнера их родителя), если щелкнул родительский контейнер, и поэтому установлен cookie.
Любая помощь будет принята с благодарностью. Благодаря.
Исходный файл cookie, который я использовал для быстрой проверки:
function setCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
setCookie(name,"",-1);
}
ОБНОВЛЕНИЕ:
Я также попробовал каждую функцию, но не повезло:
$('table#toggle tr.' + readCookie('togState')).each(function() {
$(this).hide();
});
ОБНОВЛЕНИЕ 2:
Если я помещаю чек в jquery (я использовал hide ()), работает, , но только для одного cookie. Таким образом, актуальная проблема сейчас заключается в как сохранить больше файлов cookie для большего количества родительских строк?