javascript - 为什么不设置这个 cookie?
问题描述
这段代码的目标是为页面的背景颜色设置一个 cookie。我不明白为什么cookie不会设置。
<select id="ddlTheme" onchange="setColorCookie()">
<option value="Select Color">Select Color</option>
<option value="red">Red</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
</select>
<script>
window.onload = function() {
if(document.cookie.length != 0) {
var nameValueArray = document.cookie.split("=");
document.getElementById("ddlTheme").value = nameValueArray[1];
document.body.style.backgroundColor = nameValueArray[1];
console.log("Window onload happened sir!");
}
}
function setColorCookie() {
var selectedValue = document.getElementById("ddlTheme").value;
if (selectedValue != "Select Color") {
document.body.style.backgroundColor = selectedValue;
var d = new Date();
d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
var expires = "expires="+d.toUTCString();
document.cookie = "color=" + selectedValue + ";" + expires;
console.log("Set cookie");
}
}
</script>
提前致谢!
解决方案
在您的setColorCookie()
函数中,您有一个exdays
未定义的变量。
推荐阅读
- reactjs - 访问多个组件中的反应钩子函数和状态
- multithreading - 由 Cantaloupe-Melon 大学的科学家设计的 FastPath 锁定算法是否正确?
- react-native - 当孩子用 Swipeable 包裹时,FlatList 或 ScrollView 不起作用
- laravel - Laravel 查询存在的几种
- java - 最近开始学习Java,我想创建一个计算点击次数的应用程序
- ios - 使用类和 swift 初始化程序快速编码、理解并更好地改进我的代码
- ajax - 数据不通过 formData 传输
- database - 如何为flutter windows应用程序实现数据库查询?
- javascript - 动态帮助命令 discord.js
- php - 如何将css存储到mysql数据库中并回调它以显示在html上