Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript WebStorage是我最好的选择吗?_Javascript_Html - Fatal编程技术网

Javascript WebStorage是我最好的选择吗?

Javascript WebStorage是我最好的选择吗?,javascript,html,Javascript,Html,所以,我有一个我想用文本填充的标签。这个文本将在几个页面上相同,我希望能够在不单独编辑每个页面的情况下对此文本进行更改 我可以用javascript和Web存储来实现这一点,但这似乎不是最好的解决方案。我还有别的办法吗 我希望避免为此使用sql server。请在下面的小提琴中查看我的工作代码 工作代码: <div id="1"></div> <div id="2"></div> <div id="3"></div> <

所以,我有一个我想用文本填充的标签。这个文本将在几个页面上相同,我希望能够在不单独编辑每个页面的情况下对此文本进行更改

我可以用javascript和Web存储来实现这一点,但这似乎不是最好的解决方案。我还有别的办法吗

我希望避免为此使用sql server。请在下面的小提琴中查看我的工作代码

工作代码:

<div id="1"></div>
<div id="2"></div>
<div id="3"></div>
<div id="4"></div>

<script>
// Check browser support
if (typeof(Storage) !== "undefined") {
    // Store
    localStorage.setItem("11", "some text1");
    localStorage.setItem("22", "some text2");
    // Retrieve
    localStorage.setItem("33", "some text3");
    localStorage.setItem("44", "some text4");    



    document.getElementById("1").innerHTML = localStorage.getItem("11");
    document.getElementById("2").innerHTML = localStorage.getItem("22");
    document.getElementById("3").innerHTML = localStorage.getItem("33");
    document.getElementById("4").innerHTML = localStorage.getItem("44");
} else {
    document.getElementById("topptur").innerHTML = "Web Storage er ikke støttet, last ned nyeste versjon av nettleseren din";
}
</script>

//检查浏览器支持
if(类型(存储)!=“未定义”){
//贮藏
setItem(“11”,“某些文本1”);
setItem(“22”,“某些文本2”);
//取回
setItem(“33”,“某些文本3”);
setItem(“44”,“某些文本4”);
document.getElementById(“1”).innerHTML=localStorage.getItem(“11”);
document.getElementById(“2”).innerHTML=localStorage.getItem(“22”);
document.getElementById(“3”).innerHTML=localStorage.getItem(“33”);
document.getElementById(“4”).innerHTML=localStorage.getItem(“44”);
}否则{
document.getElementById(“toptur”).innerHTML=“Web存储er ikke støttet,last ned nyeste versjon av nettleseren din”;
}

您是对的,web存储不是解决这一问题的好办法

您至少有两种选择:

  • A(一个文件,在其中定义该文本,然后使用服务器端机制将其包含在所有页面中)

  • 您在所有页面上链接到的单个JavaScript文件将填充您想要的文本

  • 在某种程度上,您将能够进行客户端操作,但目前还没有强大的支持

  • 例如,您的JS文件可能是:

    document.getElementById("1").innerHTML = "the text for 1";
    document.getElementById("2").innerHTML = "the text for 2";
    document.getElementById("3").innerHTML = "the text for 3";
    document.getElementById("4").innerHTML = "the text for 4";
    
    …然后在页面中最后一个元素之后添加该内容。如果您想更改内容,只需在JS文件中更改即可


    一般来说,1可能是更好的选择,至少在3变得更可行之前是这样。

    你说得对,web存储不是解决这个问题的好办法

    您至少有两种选择:

  • A(一个文件,在其中定义该文本,然后使用服务器端机制将其包含在所有页面中)

  • 您在所有页面上链接到的单个JavaScript文件将填充您想要的文本

  • 在某种程度上,您将能够进行客户端操作,但目前还没有强大的支持

  • 例如,您的JS文件可能是:

    document.getElementById("1").innerHTML = "the text for 1";
    document.getElementById("2").innerHTML = "the text for 2";
    document.getElementById("3").innerHTML = "the text for 3";
    document.getElementById("4").innerHTML = "the text for 4";
    
    …然后在页面中最后一个元素之后添加该内容。如果您想更改内容,只需在JS文件中更改即可


    一般来说,1可能是更好的选择,至少在3变得更可行之前是这样。

    如果要对所有文件使用相同的文本,可以使用以下方法

    • 创建一个公共json并从中读取数据,随时编辑它
    • 使用

    您可以在模板中保存数据,也可以在项目中的任何位置使用数据,这似乎是一个更好的选择。

    如果要对所有文件使用相同的文本,可以使用以下方法

    • 创建一个公共json并从中读取数据,随时编辑它
    • 使用

    您可以在模板中存储数据,也可以在项目中的任何地方使用数据,这似乎是一个更好的选择。

    为什么这似乎不是最好的方法?@bhansa需要存储大量文本,在我看来,javascript将变得相当大。您还有其他选择吗?“我希望能够在不单独输入每页的情况下更改此文本”您是指编辑页面还是使用页面?@T.J.Crowder输入和编辑,应该进行书面编辑,抱歉,为什么这似乎不是最好的方式?@bhansa需要存储大量文本,在我看来,javascript将变得相当大。您还有其他选择吗?“我希望能够在不单独输入每个页面的情况下更改此文本”您是指编辑页面,还是使用页面?@T.J.Crowder输入和编辑,应该有书面编辑,或后续问题。当我使用它时,div将只由JS中的第一行填充。如果使用id=“4”,则不会得到任何结果。检查小提琴,并尝试将ID更改为1。然后它就起作用了…一个后续问题。当我使用它时,div将只由JS中的第一行填充。如果使用id=“4”,则不会得到任何结果。检查小提琴,并尝试将ID更改为1。然后它工作了。。。