我有一個contenteditable
div
作爲一個編輯器,允許用戶輸入和保存文本。點擊保存按鈕後,我會提示他們詢問他們想要保存文本的內容。如何保持附加數據刷新?
標題然後保存到localstorage並附加到單獨的div
,在那裏他們點擊標題,他們保存它的文本將出現在編輯器中。
現在的問題是,無論何時刷新頁面,附加的數據都會消失。想知道如何在刷新時保留附加數據?另外,我需要它仍然能夠鏈接到它的內容,而不僅僅是成爲一個div中的一堆文本。
我在這裏簡化了整個代碼:
<!doctype html>
<html>
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js">
</script>
</head>
<body>
<div style="width:10em; height:10em; border-style:solid; border-color:black;" id="editor1" contenteditable="true"></div>
<button id="savebtn">Save Changes</button>
<div style="width:10em; height:5em; border-style:solid; border-color:red;" id="Contentable"></div>
<script>
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.innerHTML);
titles = localStorage.getItem("titles");
if (titles == null) {
titles = [];
} else {
titles = JSON.parse(titles);
}
titles.push(title);
localStorage.setItem("titles", JSON.stringify(titles));
var htmlData = "<a onclick=showData('" + title + "')>" + title + "</a><br>";
$("#Contentable").append(htmlData);
var userVersion = editElem.innerHTML;
localStorage.setItem("userEdits", userVersion);
editElem.innerHTML = "";
});
});
function showData(txt) {
editElem.innerHTML = localStorage.getItem(txt);
}
</script>
</body>
</html>
編輯:我如何使用也說一個「刪除」按鈕來刪除從格中的數據?如果div過於封裝並且有一些用戶想要刪除的無用標題。
您是否嘗試過在'。就緒()'處理顯示localStorage'的'內容是什麼? – guest271314