document.getElementById textContent失效:跨页面传值无法填充input
问题解决:无法将数据填充到目标文本框
问题出在你对input元素的赋值方式上:input输入框的内容需要通过value属性设置,而不是textContent。textContent适用于div、p这类普通文本元素,对input无效。
修改后的接收页面代码:
<input id="Syrdariya" type="text" onchange="adddata()"> <script> const abc = localStorage.getItem('Syrdariya'); console.log(abc); // 关键修改:用value属性赋值 document.getElementById('Syrdariya').value = abc; // 清理localStorage,二选一即可,无需重复执行 localStorage.removeItem('Syrdariya'); // localStorage.clear(); // 这个会清空所有localStorage数据,按需选择 </script>
额外注意事项:
- 确保JS代码在DOM加载完成后执行:要么把script标签放在input元素之后,要么包裹在
DOMContentLoaded事件中,避免出现找不到元素的情况:document.addEventListener('DOMContentLoaded', function() { const abc = localStorage.getItem('Syrdariya'); document.getElementById('Syrdariya').value = abc; localStorage.removeItem('Syrdariya'); }); - 你的代码中
localStorage.removeItem和localStorage.clear()重复了,前者只删除指定键的数据,后者会清空所有localStorage内容,根据需求选择其一即可。
内容的提问来源于stack exchange,提问作者Mahmud
相关产品推荐
相关产品推荐

