我在創建和獲取具有多個值的cookie時遇到了一些麻煩。 好的,我想要做的是在單擊提交按鈕時創建一個包含表單輸入值的cookie。然後,當同一用戶重新訪問該網站時,該表單將自動填入用戶上次輸入的內容。如何在jQuery中使用多個值創建Cookie
我的HTML:
<form id="formen">
<fieldset>
<legend>Login</legend>
<label for="firstname" class="label">Firstname</label>
<input type="text" name="firstname" id="firstname" class="text" maxlength="30" />
</br></br>
<label for="lastname" class="label">Lastname</label>
<input type="text" name="lastname" id="lastname" class="text" maxlength="30" />
</br></br>
<label for="lastname" class="label">Address</label>
<input type="text" name="third" id="address" class="text" maxlength="30" />
</br></br>
<label for="lastname" class="label">City</label>
<input type="text" name="city" id="city" class="text" maxlength="30" data-sayt-exclude/>
</br></br>
<label for="lastname" class="label">Zipcode</label>
<input type="number" name="zipcode" id="zipcode" class="text" maxlength="30" />
</br></br>
<label for="lastname" class="label">E-mail</label>
<input type="email" name="email" id="email" class="text" maxlength="30" />
</br></br>
<label for="lastname" class="label">Phone</label>
<input type="number" name="phone" id="phone" class="text" maxlength="30" />
</br></br>
<input type="submit" name="submit" value="Remember Me" id="remember"/>
</fieldset>
</form>
我的JavaScript/jQuery的:
$(document).ready(function() {
var date = new Date();
date.setTime(date.getTime() + (60 * 1000));
if ($("#remember").click(function() {
$.cookie('firstnameCookie', $firstnameVariable.val(), { expires: date });
$.cookie('lastnameCookie', $lastnameVariable.val(), { expires: date });
$.cookie('addressCookie', $addressVariable.val(), { expires: date });
$.cookie('cityCookie', $cityVariable.val(), { expires: date });
$.cookie('zipcodeCookie', $zipcodeVariable.val(), { expires: date });
$.cookie('emailCookie', $emailVariable.val(), { expires: date });
$.cookie('phoneCookie', $phoneVariable.val(), { expires: date });
}));
//set the value of the cookie to the element
var $firstnameVariable = $("#firstname").val($.cookie("firstnameCookie"));
var $lastnameVariable = $("#lastname").val($.cookie("lastnameCookie"));
var $addressVariable = $("#address").val($.cookie("addressCookie"));
var $cityVariable = $("#city").val($.cookie("cityCookie"));
var $zipcodeVariable = $("#zipcode").val($.cookie("zipcodeCookie"));
var $emailVariable = $("#email").val($.cookie("emailCookie"));
var $phoneVariable = $("#phone").val($.cookie("phoneCookie"));
});
此代碼實際上做的伎倆。它保存不同的輸入值,並在用戶重新訪問網站時自動填充。
唯一的問題是我不想爲每個輸入值創建一個新的cookie。 是否可以創建一個包含每個輸入值的cookie,並讓它自動填充不同的輸入字段?
希望有人能幫助我!無法弄清楚.. Thx
localstorage可能是比cookie更好的解決方案。基本上你想要一個對象。 – epascarello