У меня есть приложение, которое собирает данные из полей ввода и добавляет их в таблицу. См. Мой код ниже. Что я делаю не так?Проблема с SessionStorage, сохраняющая данные умножения
function save(){
var name= $("#name").val();
var email= $("#email").val();
var telephone= $("#tel").val();
var street= $("#street").val();
var city= $("#city").val();
var state= $("#state").val();
var zip= $("#zip").val();
var inputArray = [name, email, telephone, street, city, state, zip];
var dataToStore = JSON.stringify(inputArray);
var uniqueID = ID();
sessionStorage.setItem(uniqueID, dataToStore);
display();
};
function display(){
var myArraySerialized = sessionStorage.getItem(uniqueID);
var myArray = JSON.parse(myArraySerialized);
var restoredName = myArray[0];
var restoredEmail = myArray[1];
var restoredTel = myArray[2];
var restoredStreet = myArray[3];
var restoredCity = myArray[4];
var restoredState = myArray[5];
var restoredZip = myArray[6];
//append filled information from the form to the table and 2 buttons - Update and Remove
$("#listContent table").append("<tr>"+
"<td>" + restoredName + "</td>"+
"<td>" + restoredEmail + "</td>"+
"<td>" + restoredTel + "</td>"+
"<td>" + restoredStreet + "</td>"+
"<td>" + restoredCity + "</td>"+
"<td>" + restoredState + "</td>"+
"<td>" + restoredZip + "</td>"+
"<td>" + "<button>Update</button>" + "</td>" +
"<td>" + "<button>Remove</button>" + "</td>" +
"</tr>");
}
var ID = function() {
return '_' + Math.random().toString(36).substr(2, 9);
};
Хотя консоль говорит, что uniqueID не определен, и я не понимаю, почему. Когда я использую любую другую переменную - имя, адрес электронной почты, улицу и т. Д. - она прошла, uniqueID - нет. Что я делаю не так? Спасибо за помощь
вар UniqueID = ID(), да, эта переменная diclared внутри другой функции, и это видно только внутри этой функции, но я использовал этот ключ для установки массива в пределах sessionStorage, таким образом, u niqueID должен быть ассоциирован с SessionStorage и быть повторно использован в других функциях, но не –
, вот что я пытаюсь объяснить в своем ответе, переменная uniqueID не может быть видна из функции, которую вы хотите получить из sessionStorage, вам нужно передать ее к функции дисплея как-то. – taxicala