gpt4 book ai didi

Javascript - 仅将输入值的一部分保存到 localStorage

转载 作者:行者123 更新时间:2023-11-29 23:16:18 25 4
gpt4 key购买 nike

我有一个页面,用户被询问他的名字并且必须在文本框中输入它。

我希望他能够输入完整的句子,例如“我的名字是 John Doe”,并收到类似“您好,John Doe。欢迎来到此页面”的问候语。

我设法通过忽略输入中的单词组合来实现这一点,例如“我的名字是”、“我是”和“我是”。输入的其余部分很可能是用户名。

我现在的问题是,如何将用户名保存到 localStorage,以便稍后在不同的页面上使用它?我无法保存用户输入的所有内容。那会让我得到类似“欢迎回来,我的名字是 John Doe”之类的东西。

我只想保存替换后剩下的单词。

这是我的:

function myFunction() {
var text;
var answers = document.getElementById("userInput").value.toLowerCase();
answers = answers.replace(/[^a-z0-9' ]/g, "");
answers = answers.replace("my name is", "");
answers = answers.replace("i am", "");
answers = answers.replace("i'm", "");
switch (answers) {
case "":
text = "Please tell me your name.";
break;
default:
text = "Hello, " + CapitalizeName(answers) + ". Welcome to this page.";
}
document.getElementById("greeting").innerHTML = text;
document.getElementById("userInput").value = "";
localStorage.setItem("userName", CapitalizeName(answers));
}

function CapitalizeName(name) {
let _array = name.split(" ");
let n_array = [];
_array.map(w => {
w = w.charAt(0).toUpperCase() + w.slice(1);
n_array.push(w);
});
return n_array.join(" ");
}
<p>What is your name?</p>
<input id="userInput" type="text" spellcheck="false" autofocus onKeyDown="if(event.keyCode==13) myFunction();">
<p id="greeting"></p>

在第二页,我有这个:

localStorage.getItem("userName");

document.getElementById("helloUser").innerHTML = "Welcome back " + userName + "!";
<p id="helloUser"></p>

我的猜测是我没有以正确的方式保存它。我尝试在线搜索解决方案,但找不到任何具体的解决方案。

最佳答案

以下将适用于您的整个域。

请注意,出于安全原因(已阻止),它没有出现在示例中。

data.onchange = (function(){
localStorage.setItem("userName", data.value)
})
var userName = localStorage.getItem("userName");

document.getElementById("helloUser").innerHTML = "Welcome back " + userName + "!";
<input id="data">
<p id="helloUser"></p>

关于Javascript - 仅将输入值的一部分保存到 localStorage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52682995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com