2015-09-29 2 views
0

У меня есть поле ввода с одним текстовым вводом и двумя кнопками. Я хочу, чтобы пользователь напечатал что-то в поле, а затем нажмите «Сохранить». Если он обновляет страницу, вход должен быть пустым, если он не нажмет вторую кнопку «Восстановить», которая должна автоматически заполнить вход.Сохранение поля ввода с помощью jQuery

Мне удалось сохранить ввод в переменной, а затем добавить его на вход. Моя проблема в том, что вход сохраняется как объект и отображается как объект ... вместо строки. Вот мой код:

var artist; 

$(document).ready(function(){ 
     $(".save").click(function(){ 
      artist = $("#artist").val(); 
     }); 

     $(".reset").click(function(artist){ 
      $('#artist').val(artist); 
     }); 
    }); 
+0

Почему бы вам не использовать хранилище HTML 5 i.e localStorage? – Akki619

+0

Что вы подразумеваете под словом refresh? Все, включая объект JS, исчезнет, ​​если вы обновите страницу. Cookie или хранилище будут сохраняться, хотя –

+0

Я забыл про потери данных при обновлении, спасибо! Я попробую использовать файлы cookie или хранилище. –

ответ

1
$("#Save").click(function() { 
    var text = $("#text").val(); 
    localStorage.setItem('text', text); 


}); 

$("#Restore").click(function() { 
    var text = localStorage.getItem('text'); 
    console.log(text) 
    $("#text").val(text); 
}); 

DEMO

Вы должны использовать место для хранения значения текста. При обновлении страницы вы можете получить его снова. Местное хранилище - хорошее место для хранения. Демонстрация покажет, как

0

Я не использовал его раньше, но если вы хотите, чтобы сделать все это в JavaScript/JQuery, то есть библиотека для обработки печенье https://github.com/js-cookie/js-cookie. Альтернативой является использование вашей серверной части для установки файла cookie.

Смежные вопросы