2

我试图通过 window.localstorage 将字符串值从一个 html 传递到另一个,但它似乎不起作用,这是我的代码:

index.html 上有一个按钮:

<a href="./comer.html" onclick="passString("whatever")">

功能:

function passString(optionch){
    window.localStorage.setItem("option", "optionch");
}

然后在另一个 html 中,我尝试使用该字符串:

<body onload="pruebaString()">
<ul>
 ....
<li id="testString">

功能:

function pruebaString(){
    document.getElementById("testString").innerHTML =
        window.localStorage.getItem("option");
}

li不显示任何内容,并且我在 chrome 控制台上没有收到任何错误。

谢谢您的帮助!

4

1 回答 1

4

该行将onclick="passString("whatever")"导致问题使用单引号代替:onclick="passString('whatever')".

.setItem("option", "optionch");应该.setItem("option", optionch);像您传递变量 optionch 而不是字符串 optionch 一样。

编辑:在您的脚本有机会执行之前,该页面也可能被重定向。尝试这样的事情:

HTML

<a href="#" onclick="passString('whatever')">

JS

function passString(optionch){
    window.localStorage.setItem("option", optionch);
    window.location.href = '**[pageyounavigateto]**';
}
于 2013-02-13T13:02:54.590 回答