2013-12-15 43 views
0

我有一個文本輸入,當用戶點擊按鈕時,jQuery克隆輸入,並做出另一個。如何將jQuery克隆文本輸入保存到cookie或html5存儲?

$(document).ready(function(){ 
$('.add').click(function(event){ 
    var predmet = $('input.clear:last'); 
    $('div.clear').before(predmet.clone().val('').slideToggle("fast")); 
    $('div.clear').before(predmet.next().clone().val(0)); 
    event.preventDefault(); 
}); 

現在,我的問題是 - 我怎麼能保存輸入形式使用網站或HTML5存儲(什麼是更好的解決方案呢?)。我希望在頁面刷新時顯示克隆的文本輸入,這些輸入先前用cookie或html5保存。謝謝!

回答

1

您可以創建一個對象數組,可以在保存期間使用JSON.stringify()保存到localStorage,在檢索期間使用JSON.parse()將字符串返回到數組。

您的節省將取決於你的UI需要一點。

該數組的非常簡單的格式可以使用jQuery serializeArray()而容易地獲得。如果你需要一個像標籤值,顯示設置等更多細節,你需要創建自己的對象的數組

因此,你可以這樣做:

var data = $('#formID').serializeArray(); 
localStorage.setItem('myFormData', JSON.stringify(data)); 

然後在頁面加載,檢索本地存儲,返回字符串它使用JSON.parse和遍歷數組數組來創建領域

jQUery serializeArray() Docs

+0

謝謝!我瞭解它,但我無法做到...有沒有一個小提琴或示例代碼?我只想保存創建的文本輸入和值,並備份到本地存儲,所以當頁面正在反覆獲取值和表單時。 – user3104669

+0

你用你的基本添加功能創建小提琴...可以從那裏幫助 – charlietfl

+0

是否有一個jQuery插件,我可以使用這個? – user3104669

0

HTML5存儲是一個不錯的選擇,如果你的用戶羣可能有HTML的可用存儲空間。如果您必須支持舊版瀏覽器,Cookie存儲會更好。

+0

謝謝!你可以給我示例代碼或小提琴嗎? – user3104669