I need some help with my JavaScript/JSON coding. I have a script that loads JSON data and displays it on an HTML page. Now, I want to know how I can update this data. Specifically, I want the script to update the location of the person when a button is clicked.
Plaats = place postcode = zipcode
<!DOCTYPE html>
<html lang="en">
<body>
<p id="demo"></p>
<script>
var text = '{ "gebruikers" : [' +
'{"naam":"Johan de vries", "Plaats":"Otterlokade 56", "postcode":"6743FG", "Plaats":"Dinxperloo", "telefoon":"0495-1234567"},' +
'{"naam":"Jan de hoop", "Plaats":"Maaswijk 23", "postcode":"1234AK", "Plaats":"Hindelopen", "telefoon":"0345-1245677"},' +
'{"naam":"Marlies de hoop", "Plaats":"Maaswijk 23", "postcode":"1234AK", "Plaats":"Hindelopen", "telefoon":"0345-1245677"} ]}';
// Load JSON
obj = JSON.parse(text);
var longtext = "";
for (i = 0; i < obj.gebruikers.length; i++) {
// add json to longtext
longtext += "<ul><li>" + obj.gebruikers[i].naam + "</li><li> " + obj.gebruikers[i].Plaats + "</li>" + obj.gebruikers[i].postcode + "</li><li>" + obj.gebruikers[i].Plaats + "</li><li>" + obj.gebruikers[i].telefoon + "</li></ul>" ;
}
function myChange() {
// load names
var selector = document.getElementById('namen');
var value = selector[selector.selectedIndex].value;
// Load places
var plaatsen = document.getElementById('plaatsen');
var plaatsen = plaatsen[plaatsen.selectedIndex].value;
for (var i=0; i<text.length; i++) {
if (longtext[i].naam == value) {
longtext[i].Plaats = plaatsen;
break;
}
}
}
document.getElementById("demo").innerHTML = longtext;
</script>
<select name="plaatsen">
<option value="Amersfoort">Amersfoort</option>
<option value="Utrecht">Utrecht</option>
<option value="Amsterdam">Amsterdam</option>
</select>
<select name="namen">
<option value="Johan de vries">Johan de vries</option>
<option value="Jan de hoop">Jan de hoop</option>
<option value="Marlies de hoop">Marlies de hoop</option>
</select>
<input type="submit" onclick="myChange()">
</body>
</html>