【发布时间】:2016-08-03 08:10:07
【问题描述】:
此代码在小提琴中有效,但在 html 文件中无效:
<!doctype html>
<html>
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js">
var editElem = document.getElementById("editor1");
$(document).ready(function() {
$("#savebtn").click(function() {
var title = prompt("What would you like your title to be?");
localStorage.setItem(title, editElem.value);
titles = localStorage.getItem("titles");
if (titles == null) {
titles = [];
} else {
titles = JSON.parse(titles);
}
titles.push(title);
localStorage.setItem("titles", JSON.stringify(titles));
document.getElementById("update").innerHTML = "Edits saved!";
var htmlData = "<a onclick=showData('" + title + "')>" + title + "</a><br>";
$("#Contentable").append(htmlData);
var userVersion = editElem.value;
localStorage.setItem("userEdits", userVersion);
editElem.value = "";
});
});
function showData(txt) {
editElem.value = localStorage.getItem(txt);
}
</script>
</head>
<body>
<input type='text' id="editor1" />
<input type='button' id="savebtn" value="save" />
<div id="Contentable"></div>
<br>
<br>
<br>
<br>
<br>
<div id="update"></div>
</body>
</html>
小提琴:https://jsfiddle.net/4uwvcrdc/ 我已经在 chrome 中检查了控制台;没有错误。我也把脚本移到了身体下面,还是不行。
【问题讨论】:
-
将
editElem = document.getElementById("editor1")移动到文档就绪处理程序或将整个代码移动到 html 的末尾 ........脚本的大部分 sn-p 将在代码之后或在文档准备处理程序.......在你的代码中你不能在加载元素之前得到editor1
标签: javascript jquery html