Делал тут проектик. В процессе редактирования форм нужно было временно сохранять данные. Удобно было это делать на стороне клиента. Соответсвенно есть только один вариант — это cookie. Ниже пример кода. Код сырой. Кому надо сами допиливайте, выкладываю как есть. Если кто найдет решение лучше — буду благодарен за ссылки в комментах.
Для удобства работы с cookie я использовал плагин для jQuery jQuery Cookie Plugin
( ну и сам по себе jQuery соответственно ). Данные форм собирались в ассоциативный массив. Где имя элемента = имени инпута формы, занчение элемента массива = значению инпута формы. Затем массив конвертил в строку. А строку сохранял в куку. При изменении/добавлении — считываю строку из cookie, преобразую её в ассоциативный массив и добавляю/обновляю элемент массива. Потом обновляю куку.
[cc lang=”javascript”]
var _cn = ‘cookie_name';
function azzrael_delete_cookie(){
$.cookie(_cn, null);
}
function azzrael_getArrayCookie(){
var cstr = $.cookie(_cn);
var kv = [];
var arr_c = {};
if(cstr != null){
var arr = cstr.split(‘;’);
for(var i = 0; i < arr.length-1; i++ ){
kv = arr[i].split(‘=’);
arr_c[kv[0]] = kv[1];
}
}
return arr_c;
}
function getParam(name){
var arr_c = azzrael_getArrayCookie();
return (arr_c[name] == null )? 0 : arr_c[name];
}
function setParam(name, value){
var arr_c = azzrael_getArrayCookie();
arr_c[name] = value;
var cstr = ”;
for (var key in arr_c) {
cstr += key + ‘=’ + arr_c[key]+ ‘;';
}
$.cookie(_cn,cstr);
}
[/cc]
27 марта 2012 |
Раздел: Программирование |
Метки: jquery