새 콘텐츠를 만들고 싶습니다. 새로운 내용은 데이터 테이블과 이미 localStorage에 저장된 테이블을 표시합니다.
내가 새로운 표 ADD 버튼을 클릭하면 표가 생성되고 로컬 스토리지에 저장하고있다
를 로컬 스토리지에 저장됩니다.하지만
When im refresh the page, The table not display but saved to localStorage.
How to be able to display a table [datatable view] that has been created and stored in localStorage when the page is refreshed?
jQuery를 :
$("#mainTable").dataTable();
/* CREATE TABLE FITURE */
$('.submitButton').click(function() {
function getTableList() {
var addTable = '<div class="tab-pane" id="folder' + localStorage.Index + '">' +
'<div class="zf-table">' +
'<table id="table' + localStorage.Index + '" class="table table-bordered table-hover myFade">' +
'<thead>' +
'<tr>' +
'<th style="border-color:rgb(221, 221, 221);"></th>' +
'<th>Audience Name</th>' +
'<th>Type</th>' +
'<th>Size</th>' +
'<th>Date Created</th>' +
'<th>Action</th>' +
'</tr>' +
'</thead>' +
'</table>' +
'</div>' +
'</div>';
return addTable;
}
if (true) {
/** INDEX FOR INCREMENT ID **/
if (typeof(Storage) !== "undefined") {
if (localStorage.Index) {
localStorage.Index = Number(localStorage.Index) + 1;
} else {
localStorage.Index = 1;
}
} // if storage
var resultTable = JSON.parse(localStorage.getItem("tableList"));
if (resultTable == null) {
resultTable = [];
}
let newtableHTML = getTableList();
resultTable.push({
table: newtableHTML
});
// save the new resultTable array
localStorage.setItem("tableList", JSON.stringify(resultTable));
/* append Table baru */
$('.tab-content').append(newtableHTML);
var newTable = $("#table" + localStorage.Index).dataTable();
alert("sucess create table");
} else {
alert("Failed create Table");
}
}); // submitButton func
//on init fill the table-content
var resultTable = JSON.parse(localStorage.getItem("tableList"));
if (resultTable != null) {
//get the nav reference in DOM
let tableContent = $(".tab-content");
//clear the html contents
tableContent.html('');
for (var i = 0; i < resultTable.length; i++) {
var items = resultTable[i];
$(".tab-content").append(items.table);
}
} else {
let inititalTable = [];
inititalTable.push({
table: $('div.tab-content').html()
});
localStorage.setItem("tableList", JSON.stringify(inititalTable));
}
먼저 자바 스크립트를 확인하고 오류에서 무료로 확인해야합니다. 두 가지 오류가 나타납니다. 1. let tableContent = $ (". table-content");':이 선택기로 HTML에 요소가 없으므로 '추가'할 수 없습니다. 2. 콘솔에서 '잡히지 않은 참조 오류 : 항목이 정의되지 않았습니다.'라는 메시지를 확인하십시오. 그것은이 줄'$ (".tab-content"). append (item.table);을 참조하고'items'이어야합니다. – pschild
haha, im typo. 미안 ..하지만 그건 내 기본 테이블을 표시하지 않습니다. 미해결. – Ananda
나는 이미 게시물과 [Fiddle] (https://jsfiddle.net/4fukuma/gtwnueq8/)을 업데이트합니다. 작동하지만 미해결 인 경우 [This] (http://prntscr.com/hjb4b7)와 같은 표가 표시됩니다. 내가'var newTable'을 localStorage에도 저장해야합니까? – Ananda