2012-10-02 45 views
0

我如何拆分json對象並根據ID更新它們。我聽說使用stringify!以及如何實現更新對象的功能?JavaScript json拆分對象和更新

<input type="text" value="{"id":"1","price":"30.00","edit":0}, 
{"id":"2","price":"8.00","edit":0}" id="json" /> 

**code:** 
var json = $('#json').val().split(','); 

for (var i = 0; i < json.length; i++){ 
    alert(json); 
} 
//(seems its splitting every comma it finds). 

我試着去存檔:

  • 拆分對象{ 「ID」: 「1」, 「價格」: 「30.00」, 「編輯」:0},{ 「ID」: 「2」,「價格」:「8.00」,「編輯」:0}
  • 更新取決於選定的ID。
  • 然後保存並返回相同的對象格式,但具有更新的值。

希望我的問題清除足夠:)

回答

3

而是字符串分割和解析環繞你的價值..嘗試使用如下$.parseJSON

$.parseJSON("[" + $('#json').val() + "]"); 

DEMO:http://jsfiddle.net/QUTu9/

而且固定的報價在HTML像下面,

<input type="text" value='{"id":"1","price":"30.00","edit":0}, 
{"id":"2","price":"8.00","edit":0}' id="json" /> 
+0

感謝隊友..你救我的日子:D – tonoslfx

0

,因爲你有報價的問題,將無法正常工作。最簡單的解決方案是用單引號包圍它。

<input type="text" value='{"id":"1","price":"30.00","edit":0},{"id":"2","price":"8.00","edit":0}' id="json" /> 

不要拆它,使用JSON.parse

0

首先你的語法看起來有點亂了,用單引號

value='{"id":"1","price":"30.00","edit":0}, {"id":"2","price":"8.00","edit":0}' 
+0

您CNA不使用粗體標籤碼的標籤內。 – epascarello

+0

我的意思是使用「而不是」.. –