Как изменить свойство json для события? - PullRequest
0 голосов
/ 12 июля 2011

Я хочу знать, как динамически изменить значение свойства json в событии jquery и затем загрузить его в браузер. Вот образец JSON.

var spiderman = {
   "fname" : "Peter",
   "lname" : "Parker",
   "nick" : "Spidey"
}

и вот, скажем, событие ... событие клика

HTML код

Input a new nickname:<br />
<input type="text" id="newNick" />
<div id="pressMe">Press Me!</div>
<div id="output"></div>

jQuery event

$("#pressMe").click(function(){
   var newNick = $("#newNick").val();

   /* please place the correct code here */

   $("#output").text("Spiderman's new nick is " + spiderman.nick);
})

Цель: Пользователь вводит новый псевдоним. Когда пользователь нажимает # pressMe , он получает значение # newNick и помещает его в json, чтобы изменить свойство nick. После этого ... он покажет новое свойство "ник" на # output .

Надеюсь, это не смущает. Спасибо!

Ответы [ 3 ]

3 голосов
/ 12 июля 2011

Это должно работать нормально:

spiderman.nick = newNick;

Помните, что если JSON исходит из запроса AJAX и вы загрузили его с помощью jQuery (или eval), то свойства объекта доступны, как я написал (дажеесли вы видите их цитаты, если вы посмотрите на сырой ответ).Если вы определили JSON в памяти, вам не нужно использовать кавычки в именах свойств, но вместо этого вы должны написать:

var spiderman = {
   fname : "Peter",
   lname : "Parker",
   nick : "Spidey"
}
1 голос
/ 12 июля 2011

Я уверен, что вы просто пропустили это, но это должно работать:

$("#pressMe").click(function(){
    var newNick = $("#newNick").val();

    spiderman.nick = newNick;

    $("#output").text("Spiderman's new nick is " + spiderman.nick);
});
1 голос
/ 12 июля 2011

Вы можете просто присвоить свойству объекта json

spiderman.nick = newNick;

http://jsfiddle.net/s57YR/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...