Тема: input + cookie
Показать сообщение отдельно
  #1 (permalink)  
Старый 17.01.2014, 12:58
Аспирант
Отправить личное сообщение для piraids Посмотреть профиль Найти все сообщения от piraids
 
Регистрация: 20.08.2013
Сообщений: 88

input + cookie
Помогите написать скрипт, который будет сохранять введенные значения input при перезагрузке страницы

Есть блок ввода количества товара:
<button onClick="if (document.getElementById('count_<?=$id?>').value > 1) {document.getElementById('count_<?=$id?>').value -= 1;} check(); return false;">
            <span>-</span>
            </button>
            <input type="text" onClick="check();" name="count1" id="count_<?=$this->id?>" value='1' onChange="if (this.value <= 0) {this.value = '1';}">
            <button onClick="document.getElementById('count_<?=$id?>').value = Math.round(document.getElementById('count_<?=$id?>').value)+1; check(); return false;">
            <span>+</span></button>


здесь пример

$id содержит массив (1,2,3,4,5 и т.д.)

Мне необходимо, чтобы при изменении значения input > 1, его значение записывалось в cookie, при значении 1 - cookie чистилось бы

Пробую написать так:
<script type="text/javascript">
                $(document).ready(function() {
    var inputChange = $('input[name="count1"]');
    inputChange.change(function (e){
      var inputValue = $(e.target).val(),
      elemIdInput = $(e.currentTarget).attr("id"); // переменная с сохранением id в input выбранном                          
      //alert(inputValue);
      $.cookie('valueInput' + elemIdInput, inputValue, { expires: 1}); //сохраняем наши значения в куки
    });

    for(var i = 0; i < inputChange.length; i++){
        inputChange.eq(i).val($.cookie('valueInput' + inputChange.eq(i).attr('id')));
    };
});
            </script>

но работает не так как хотелось бы, во первых убирает значение из инпута - ставит пустое, во вторых не сохраняет значение инпута если кликнуть + или - ,в третьих - как написать проверку на удаление?
Ответить с цитированием