PropertyGridを使う際、表示する内容が固定されているケースでは、最初にデータを読み込んでしまえば完了だが、値が動的に変わる場合に備えて関数を用意しておく。
今回は「Key & Value」の「Key」は不変で、「Value」が変化する場合を想定する。
- Keyを指定してValueを更新する
function setGridValue(key,v){
for (var i = 0; i < gGridKeyNameMapInfo.length; i++) {
if (gGridKeyNameMapInfo[i].name == key) {
$(gridMapInfo).datagrid('updateRow', {
index: i,
row: { name: key, value: v }
});
return;
}
}
console.log('Error:Unknown key:'+key+' v:'+v);
}
与えられたkeyを検索し、一致したら updateRow() で値を更新する。
上記の関数は、Key名を変数gGridKeyNameMapInfoに格納していることが前提。そのため、事前に以下の処理が必要。(PropertyGridから取り出せそうだが、うまくいかなかったので暫定対応。)
var gGridKeyNameMapInfo = [];
$.getJSON('json/grid_rowname_mapinfo.json', function(data){
gGridKeyNameMapInfo = data;
});