Javascript 本地存储斗争

Javascript 本地存储斗争,javascript,local-storage,Javascript,Local Storage,我正在尝试打印页面上文本框内的值 单击按钮后,值将显示在页面上,但仅显示一瞬间 如何使值保留在页面上 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document&l

我正在尝试打印页面上文本框内的值

单击按钮后,值将显示在页面上,但仅显示一瞬间

如何使值保留在页面上

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>

    <h2>Local Storage - JavaScript <h2>

    <fieldset>
        <legend>Insert Data</legend>
        <input id="inpKey" type="text" placeholder="Enter key...">
        <input id="inpValue" type="text" placeholder="Enter Value...">
        <button type="button" id="btnInsert">Insert Data</button>
    </fieldset>

    <fieldset>
        <legend>Local Storage</legend>
        <div id="lsOutPut"></div>
    </fieldset>


<script src="action.js">

const inpKey = document.getElementById("inpKey");
const inpValue = document.getElementById("inpValue");
const btnInsert = document.getElementById("btnInsert");
const lsOutPut = document.getElementById("lsOutPut");

btnInsert.onclick = function(){
    const key = inpKey.value;
    const value = inpValue.value;

    if(key && value) {
        localStorage.setItem(key, value);
        location.reload();
    }

    for(let i = 0; i < localStorage.length; i++){
        const keyx = localStorage.key(i); 
        const value = localStorage.getItem(keyx); 

        lsOutPut.innerHTML += `${keyx}: ${value}</br> `
    }
}

</script>
</body>
</html>

文件
本地存储-JavaScript
插入数据
插入数据
本地存储
const inpKey=document.getElementById(“inpKey”);
常量inpValue=document.getElementById(“inpValue”);
const btnisert=document.getElementById(“btnisert”);
const lsOutPut=document.getElementById(“lsOutPut”);
btnisert.onclick=函数(){
const key=inpKey.value;
常量值=inpValue.value;
if(键和值){
setItem(键、值);
location.reload();
}
for(设i=0;i`
}
}

在您的代码中有
location.reload()
,这就是它重新加载页面的原因,不确定为什么会有,但原因是:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>

    <h2>Local Storage - JavaScript <h2>

    <fieldset>
        <legend>Insert Data</legend>
        <input id="inpKey" type="text" placeholder="Enter key...">
        <input id="inpValue" type="text" placeholder="Enter Value...">
        <input type="button" id="btnInsert" value="Insert Data"/>
    </fieldset>

    <fieldset>
        <legend>Local Storage</legend>
        <div id="lsOutPut"></div>
    </fieldset>


<script>

const inpKey = document.getElementById("inpKey");
const inpValue = document.getElementById("inpValue");
const btnInsert = document.getElementById("btnInsert");
const lsOutPut = document.getElementById("lsOutPut");

btnInsert.onclick = function(){
    const key = inpKey.value;
    const value = inpValue.value;

    if(key && value) {
        localStorage.setItem(key, value);
    }

    for(let i = 0; i < localStorage.length; i++){
        const keyx = localStorage.key(i); 
        const value = localStorage.getItem(keyx); 

        lsOutPut.innerHTML += `${keyx}: ${value}</br> `
    }
}

</script>
</body>
</html>

文件
本地存储-JavaScript
插入数据
本地存储
const inpKey=document.getElementById(“inpKey”);
常量inpValue=document.getElementById(“inpValue”);
const btnisert=document.getElementById(“btnisert”);
const lsOutPut=document.getElementById(“lsOutPut”);
btnisert.onclick=函数(){
const key=inpKey.value;
常量值=inpValue.value;
if(键和值){
setItem(键、值);
}
for(设i=0;i`
}
}

在您的代码中有
location.reload()
,这就是它重新加载页面的原因,不确定为什么会有,但原因是:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>

    <h2>Local Storage - JavaScript <h2>

    <fieldset>
        <legend>Insert Data</legend>
        <input id="inpKey" type="text" placeholder="Enter key...">
        <input id="inpValue" type="text" placeholder="Enter Value...">
        <input type="button" id="btnInsert" value="Insert Data"/>
    </fieldset>

    <fieldset>
        <legend>Local Storage</legend>
        <div id="lsOutPut"></div>
    </fieldset>


<script>

const inpKey = document.getElementById("inpKey");
const inpValue = document.getElementById("inpValue");
const btnInsert = document.getElementById("btnInsert");
const lsOutPut = document.getElementById("lsOutPut");

btnInsert.onclick = function(){
    const key = inpKey.value;
    const value = inpValue.value;

    if(key && value) {
        localStorage.setItem(key, value);
    }

    for(let i = 0; i < localStorage.length; i++){
        const keyx = localStorage.key(i); 
        const value = localStorage.getItem(keyx); 

        lsOutPut.innerHTML += `${keyx}: ${value}</br> `
    }
}

</script>
</body>
</html>

文件
本地存储-JavaScript
插入数据
本地存储
const inpKey=document.getElementById(“inpKey”);
常量inpValue=document.getElementById(“inpValue”);
const btnisert=document.getElementById(“btnisert”);
const lsOutPut=document.getElementById(“lsOutPut”);
btnisert.onclick=函数(){
const key=inpKey.value;
常量值=inpValue.value;
if(键和值){
setItem(键、值);
}
for(设i=0;i`
}
}

在您的代码中有
location.reload()
,我假定用以前的值清除div。这会重新加载页面并导致瞬间问题。在打印新值之前,将其切换到以下位置以清除该框

if(key && value) {
      localStorage.setItem(key, value);
      lsOutPut.innerHTML = '';
}
虽然不相关,但值得注意的是,您没有关闭
标记

<h2>Local Storage - JavaScript</h2>
本地存储-JavaScript

在您的代码中有
location.reload()
,我假定用以前的值清除div。这会重新加载页面并导致瞬间问题。在打印新值之前,将其切换到以下位置以清除该框

if(key && value) {
      localStorage.setItem(key, value);
      lsOutPut.innerHTML = '';
}
虽然不相关,但值得注意的是,您没有关闭
标记

<h2>Local Storage - JavaScript</h2>
本地存储-JavaScript

我使用了您的代码,现在可以使用页面上的任何输出。非常感谢你,amcquaid!我使用了您的代码,现在可以使用页面上的任何输出。非常感谢你,amcquaid!