javascriptやJqueryを使って、次のJSONオブジェクトを動的に更新するにはどうすればいいですか?
var jsonObj = [{'Id':'1','Username':'Ray','FatherName':'Thompson'},
{'Id':'2','Username':'Steve','FatherName':'Johnson'},
{'Id':'3','Username':'Albert','FatherName':'Einstein'}]
ユーザー名を 'Thomas'に、 'Id'は '3'に、動的に更新したいと思います。
どのようにしたら実現できますか?
jsonObj`がすでにJSONを含んでいることを前提とした、プレーンなJavaScriptによるソリューションです。
一致するIdを探してループし、対応するUsernameを設定し、一致したアイテムが変更された後にループを break
します。
for (var i = 0; i < jsonObj.length; i++) {
if (jsonObj[i].Id === 3) {
jsonObj[i].Username = "Thomas";
break;
}
}
[jsFiddleに掲載されています。][1]。
これは同じものを関数で包んだものです。
function setUsername(id, newUsername) {
for (var i = 0; i < jsonObj.length; i++) {
if (jsonObj[i].Id === id) {
jsonObj[i].Username = newUsername;
return;
}
}
}
// Call as
setUsername(3, "Thomas");