首页 > 解决方案 > 如何根据用户先前的值设置默认值

问题描述

我想有一个基于用户之前输入的默认值。例如,如果在输入中输入“5”,我希望在刷新页面时看到该输入的值为 5,但如果输入 6,我希望默认值为 6。谢谢(我是初学者)

标签: javascriptdefault-value

解决方案


使用本地存储

localStorage = window.localStorage;
localStorage.setItem('inputDefault', '5');

let inputDefault = localStorage.getItem('inputDefault');

下面是一个更实际的例子,我很快就搞定了:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Local Storage Example</title>

    <script type="text/javascript">
        function setLocalStorageValue()
        {
            let myNumberInputField = document.getElementById('myNumberInput');
            let myNewValue = myNumberInputField.value;

            let localStorage = window.localStorage;
            localStorage.setItem('defaultValue', myNewValue);
        }

        function getLocalStoredValue()
        {
            let localStorage = window.localStorage;
            let defaultValue = localStorage.getItem('defaultValue');

            let myNumberInputField = document.getElementById('myNumberInput');
            myNumberInputField.value = defaultValue;
        }
    </script>
</head>
<body onload="getLocalStoredValue()">
<label>My Number Input
    <input type="number" id="myNumberInput" value="0" onchange="setLocalStorageValue()">
</label>
</body>
</html>

这回答了你的问题了吗?请注意我是如何在相关输入的 onchange 事件上写回本地存储的,并且在加载 html 正文时从本地存储中读取。


推荐阅读