2015-11-22 81 views
0

我是JSON的新手,我想知道如何將值添加到對象。如何在JSON中添加對象

這裏是我的代碼:

var text = '{"coins":"500"}'; 

var obj = JSON.parse(text); 

document.getElementById("coins").innerHTML = 
obj.coins + "500"; (<-- This one does not work) 
+1

一個字符串不是一個數字。使用'parseInt()'。 –

+0

你是什麼意思「這一個不工作」。如果你有html元素的ID爲「硬幣」,它將顯示「500500」在其中.. – msmolcic

+0

@msmolcic是這是問題,但現在它解決 – Zoruak

回答

1

嘗試這樣的:

var text = '{"coins":"500"}'; 
 

 
var obj = JSON.parse(text); 
 

 
document.getElementById("coins").innerHTML = parseInt(obj.coins, 10) + 500;
<span id="coins"></span>

如果你想用一個按鈕來使用,你可以用這個嘗試:

window.onload = function() { 
 
    var text = '{"coins":"500"}'; 
 
    var obj = JSON.parse(text); 
 
    document.getElementById("coins").innerHTML = parseInt(obj.coins, 10); 
 

 
    var myButton = document.getElementById("myButton"); // Get the button context. 
 
    myButton.addEventListener("click", function() { // Assign the click event to your button. 
 
    document.getElementById("coins").innerHTML = parseInt(obj.coins, 10) + 750; 
 
    }); 
 
};
<button id="myButton">Click me</button> 
 
<span id="coins"></span>

不顯眼的方式是通過在代碼中使用的ID,並使用在你的代碼addEventListener功能。

Live demo

+0

謝謝這一個工作:D – Zoruak

+0

我有另一個問題,但stackoverflow將不會讓我再問一次,所以我在這裏發佈:我怎樣才能做一個按鈕,每次點擊它的加起來到我保存的var文本? – Zoruak

+0

這是代碼:var text ='{「coins」:「500」}'; JS: var obj = JSON.parse(text); document.getElementById(「coins」)。innerHTML = parseInt(obj.coins,10); function myFunction(){ document.getElementById(「coins」)。innerHTML = parseInt(obj.coins,10)+ 750; } HTML: Zoruak

0

這應該工作:

var text = '{"coins":"500"}'; 

var obj = JSON.parse(text); 

document.getElementById("coins").innerHTML = 
obj.coins + +"500"; 

但使用parseInt函數( 「500」),而不是+ 「500」 就是做你想要什麼更清潔的方式。

+1

帶+的那個沒有像預期的那樣工作,parseInt一切正常:) – Zoruak