2013-09-08 2 views
0

Ну у меня есть следующий код в файл яваскрипт -JQuery установить значение ключа

$(document).ready(function() { 
    localStorage.clear(); 
    var listOfNames = [{ 
     name: "Dan", 
     selected = "false" 
    }, { 
     name: "Ben", 
     selected: "false" 
    }]; 
    localStorage.setItem("namesList", JSON.stringify(listOfNames)); 
    //} 
}); 

И что я хотел бы случиться просто - я хочу с помощью нажатия одной кнопки (один говорит дан и другой ben) выбранная клавиша превратится в «true» и будет сохранена. , чтобы я мог отображать выбранное имя на другой странице html.

я пытался сделать, как залежи - в сценарии HTML-странице -

var dataNames = localStorage.getItem("namesList"); 
var names = JSON.parse(dataNames); 

function select(i) { 
    names[i].selected = "true"; 
} 

Но оказывается, что значение изменилось, но с какой-то причины, когда я пытаюсь к доступу к файлу Java Script (с именами) с другой html-страницы, он говорит, что выбранный ключ по-прежнему является ложным.

Так что я пытаюсь спросить, как я могу сохранить значение для ключа и заставить его «запомнить» изменение, чтобы его можно было заметить при чтении данных с другой страницы html.

Заранее спасибо за любую помощь

+3

Вам нужно сделать 'localStorage.setItem ("namesList", JSON.stringify (имена)),' после изменения 'selected' в 'true'. – kalley

+0

Большое спасибо - это точно работает отлично сейчас - еще раз спасибо за вашу помощь. – 4this

ответ

2

Вы не спасаем обновленный объект LocalStorage.

Изменение:

function select(i) { 
    names[i].selected = "true"; 
} 

к:

function select(i) { 
    names[i].selected = "true"; 
    localStorage.setItem("namesList", JSON.stringify(names)); 
}