Cookie 可能返回错误的格式
Cookie gives probably wrong format back
在 Laravel 应用程序中,我使用 selectpicker 作为过滤器。我喜欢将延迟状态存储在 cookie 中。
保存状态:
function saveFilterStatus() {
alert ($('#locationSelect').val())
Cookies.set('location', $('#locationSelect').val());
}
警报结果:31,32,37
预选选择器:
alert(Cookies.get('location'))
$('#locationSelect').selectpicker('val', Cookies.get('location'));
警报结果:["31","32","37"]
如果我设置 $('#locationSelect').selectpicker('val', ["31","32","37"]);
它有效
如果我设置$('#locationSelect').selectpicker('val', Cookies.get('location'));
它不起作用
我必须适应什么或缺少什么 $('#locationSelect').selectpicker('val', Cookies.get('location'));
有效?
js-cookie
插件以字符串形式存储 cookie 值(使用 JSON.stringify
)。当你需要使用 js-cookie
插件获取 Cookie 中的数组或对象时,你需要使用 Cookies.getJSON('keyName')
所以在你的情况下使用 Cookies.getJSON('location')
.
你也可以使用JSON.parse(Cookies.get('location'))
在 Laravel 应用程序中,我使用 selectpicker 作为过滤器。我喜欢将延迟状态存储在 cookie 中。
保存状态:
function saveFilterStatus() {
alert ($('#locationSelect').val())
Cookies.set('location', $('#locationSelect').val());
}
警报结果:31,32,37
预选选择器:
alert(Cookies.get('location'))
$('#locationSelect').selectpicker('val', Cookies.get('location'));
警报结果:["31","32","37"]
如果我设置 $('#locationSelect').selectpicker('val', ["31","32","37"]);
它有效
如果我设置$('#locationSelect').selectpicker('val', Cookies.get('location'));
它不起作用
我必须适应什么或缺少什么 $('#locationSelect').selectpicker('val', Cookies.get('location'));
有效?
js-cookie
插件以字符串形式存储 cookie 值(使用 JSON.stringify
)。当你需要使用 js-cookie
插件获取 Cookie 中的数组或对象时,你需要使用 Cookies.getJSON('keyName')
所以在你的情况下使用 Cookies.getJSON('location')
.
你也可以使用JSON.parse(Cookies.get('location'))