我目前正在做一个学校项目,我负责从头开始创建一个论坛。我打算创建一个“添加部分”按钮,单击该按钮会创建一个新的问题框。但是我不确定我应该怎么做。
到目前为止,我能够实现的目的是利用用户传递给我的数据,但是一旦用户刷新,我无法确保它保留在我的代码上。它是本地存储的限制吗?如果是,我可以使用任何替代方案吗?
我的代码的第1页
shiftKey
我的代码的第2页
onShiftEnter : Msg -> Attribute Msg
onShiftEnter msg =
let
tagger (code, shift) =
if code == 13 && shift then msg else NoOp
in
on "keydown"
(Json.Decode.map tagger
( Json.Decode.tuple2 (,)
(Json.Decode.at ["keyCode"] Json.Decode.int)
(Json.Decode.at ["shiftKey"] Json.Decode.bool)
)
)
答案 0 :(得分:0)
这是
localStorage.setItem(key, value);
localStorage.getItem(key, value);
您的代码不是持久的,因为您只是为对象设置了一些属性。
答案 1 :(得分:0)
正如你所说,你正在做一个学校项目,所以我不是 指责你在项目中使用普通的javascript(没有javascript框架)。但是你可以使用jQuery来简化它。
LocalStorage用于在本地存储数据(永久为您)。 SessionStorage用于存储每个会话/选项卡的数据。
我认为您要将存储的数据更新到第1页。为此,请将脚本标记更改为
<script>
function addNew(){
var questionHead = document.createTextNode("Your Question");
var queHeadElement = document.createElement("th");
queHeadElement.appendChild(questionHead);
document.getElementById("Questions").appendChild(queHeadElement);
var datatwo = localStorage.datatwo;
var newQuestionText = document.createTextNode(datatwo);
var newQuestionTextElement = document.createElement("td");
newQuestionTextElement.appendChild(newQuestionText);
document.getElementById("myNewQuestion").appendChild(newQuestionTextElement);
}
</script>
并使用此
更改您的表格<table>
<tr id="Questions">
<th>What is my Name</th>
<th>What is his name</th>
</tr>
<tr id="myNewQuestion">
<td>Justin</td>
<td>James</td>
</tr>
</table>
使用此代码,localStorage的最新数据将显示在表格中,点击按钮。
以上代码可以正常使用。但我想在这里再说一件事。
<li><a href=""> < Prev </a></li>
如果你想使用少于或更多的符号,那么像&lt;上一个浏览器会将Prev视为html元素。并且浏览器会尝试将其结束标记设置为&lt; Prev /&gt;或&lt; Prev&gt;&lt; / Prev&gt;。虽然上面的代码在这里工作,但它不应该以这种方式编写。您应该始终使用<
来表示&lt;符号和>
for&gt;
<li><a href=""> > Prev </a></li>
我希望这个答案可以帮助您完成项目。祝你的项目好运。