4 回答

TA贡献1820条经验 获得超10个赞
你有正确的想法。最大的问题在这里:
document.getElementById("txt".value);
我会让你弄清楚那里出了什么问题。
其他一些需要修复的问题:
确保您的在
<p>
<body>
确保你在HTML元素内部和之后运行它,所以基本上让它成为最后一件事
<script>
<body>
<body>
另一个提示是,您可能想要也可能不想在点击的javascript的末尾添加。这将阻止它提交表单,从而刷新页面。在这种特殊情况下,对于您拥有的设计,您可能实际上希望将其保持原样并进行刷新,以便执行从本地存储读取。但是,最好知道返回 false 的作用 - 因为在很多情况下,在执行这样的javascript后提交表单是不可取的。return false;

TA贡献1831条经验 获得超10个赞
您有 3 个问题:
1. 获取元素字节 Id(“txt”.值) 应为获取元素字节 Id(“txt”).值
2.在 3 内
取标签。把整个之前<p></body><script>...</script></body>
<!DOCTYPE html>
<html>
<body>
<form>
<input type = "text" id ="txt" placeholder='place text here'/>
<button type="submit" value='click me!' onClick="passvalues();"> Click Me</button>
</form>
<p id="result"></p>
<script>
function passvalues() {
var firstName = document.getElementById("txt").value;
localStorage.setItem("textvalue",firstName);
}
document.getElementById("result").innerHTML = localStorage.getItem("textvalue");
</script>
</body>
</html>

TA贡献2021条经验 获得超8个赞
这将工作:
<!DOCTYPE html>
<html>
<body>
<form onsubmit="event.preventDefault(); passvalues();">
<input autofocus type = "text" id ="txt" placeholder='place text here'/>
<button type="submit" value='click me!' onClick="passvalues();"> Click Me</button>
</form>
<p id="result"></p>
<script>
var result = document.getElementById("result");
result.innerHTML = localStorage.getItem("textvalue");
function passvalues(e) {
var firstName = document.getElementById("txt").value;
localStorage.setItem("textvalue", firstName);
document.getElementById("result").innerHTML = firstName;
}
</script>
</body>
</html>

TA贡献1895条经验 获得超7个赞
有关工作示例,请参见:https://jsfiddle.net/9ycqjsuo/。
我注意到的一些事情:
你把一些内容放在了正文标签之外——这是无效的。
该值不是来自文本字段,因为右图未对齐。
您的表单正在使用提交按钮,没有任何内容会阻止默认操作。当您提交表单时,它将带您进入一个新页面,除非您在提交事件上阻止Default。我已将按钮更改为阻止提交。
type="button"
在将结果文本的值存储到本地存储后,应更新该值。
添加回答
举报