SessionStorage извлекает данные из объекта с несколькими ключами - PullRequest
0 голосов
/ 30 августа 2018

Я записываю с помощью sessionStorage данные формы, речь идет о добавлении новых ресторанов. Я получаю данные из формы, но я хотел бы получить данные для каждого ресторана в форме название ресторана, адрес, уведомление, я создал класс объекта ресторана, потому что я считаю, что это необходимо ... но я не знаю, как это сделать ... Мне удается получить данные каждого ключа в блоке стиля для заметок всех команд: 1,4,5,5,1,4,1 с функцией forEachKey, но не данные каждого ключа, адреса, примечание, комментарий каждого ресторана; В основном я хотел бы восстановить для каждого ресторана: Наименование ресторана адрес нота Комментарий

Я должен хранить их как раз во время посещения сайта, при загрузке страницы все должно быть стерто ... потому что я должен добавлять рестораны фиктивным способом ... Я использовал sessionStorage, потому что я еще не освоил php. Я хотел бы отобразить данные после проверки формы в списке ресторанов, полученных с помощью API мест Google. Может кто-нибудь помочь мне, пожалуйста, мне нужны ваши огни !!! Я заперт !! СПАСИБО !!

<div id="newRestaurant"><h4>Ajouter un Restaurant</h4><form id="addNewRestaurant"><label>Nom du restaurant</label><br><input type="text" name="newName" id="newName" required><br><label>Adresse</label><br><input type="text" name="newAddress" id="newAddress" required><br><input type="submit" id="submitNewRestaurant"></form></div>';
    <form id="review_form">
    <label>Stars :</label><br>
    <p id="numberstars"</p>

    <select name="numberstars"id="numberstars">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select><br>

    <label>Your comment :</label><br>
    <textarea name="fullcomment" id="fullcomment"></textarea><br>
    <input type="submit" id="submitbtn">
    </form>
    <script>
    class Restaurant{
    constructor (nom,adresse){
    console.log(this);
    this.nom=newName;
    this.adresse=newAddress;
    this.avis=[];
    }
    }
    class avis{
    constructor(note,commentaire){
    console.log(this);
    this.note=note;
    this.commentaire=comment;
    } 
    }
    // function forEachKey() {

    // for (var i = 0; i < sessionStorage.length; i++) {
    // console.log(sessionStorage.getItem(sessionStorage.key(i)));
    // }
    // }

    //--------------------------------------------------------------------------    
    names = JSON.parse(sessionStorage.getItem('nom') || "[]");
    addresses= JSON.parse(sessionStorage.getItem('adresse') || "[]");
    document.getElementById('submitNewRestaurant').onclick =function (saveData) {

    var data = document.getElementById('newName').value;
    names.push(data);
    sessionStorage.setItem('nom', JSON.stringify(names));

    var data = document.getElementById('newAddress').value;
    addresses.push(data);
    sessionStorage.setItem('adresse', JSON.stringify(addresses));

    };

    views = JSON.parse(sessionStorage.getItem('commentaire') || "[]");
    notes = JSON.parse(sessionStorage.getItem('note') || "[]");
    document.getElementById('submitbtn').onclick =function (saveData) {

    var data = document.getElementById('fullcomment').value;
    views.push(data);
    sessionStorage.setItem('commentaire', JSON.stringify(views));

    var data= $('#numberstars option:selected').text();
    sessionStorage.setItem('note',data);
    sessionStorage.setItem('note',JSON.stringify(data));
    notes.push(data);
    sessionStorage.setItem('note', JSON.stringify(notes));
    };
    </script>
...