| Ajaxフレームワーク ユーザーズガイド |
目次
索引
![]()
|
| 第2章 クライアントフレームワーク | > 2.6 その他の定義 |
UI部品のプロパティのうち、object型プロパティおよびarray型プロパティについては、objectのプロパティを更新したり、arrayの要素を追加/削除したりするなど、値の一部を更新して、表示内容に反映することができます。このプロパティの値の一部分を更新することを、部分更新と呼びます。
この部分更新を行うために、データプロバイダがあります。
以下に、データプロバイダを利用して、テーブル部品(TableView)に新たな行を追加する例を示します。
<script type="text/javascript">
//<![CDATA[
var modelData = {
tableData: [
{name: 'ITEM1', price:1000},
{name: 'ITEM2', price:2000}
]
};
function add() { // (1)
var newItem = {name:'NEW', price:3000};
model1.getDataProvider("tableData").addItem(newItem);
}
//]]>
</script>
(省略)
<div rcf:id="model1" rcf:type="Model" rcf:object="modelData"></div>
<div rcf:id="table1" rcf:type="TableView" rcf:data="{model1.tableData}"> // (2)
<div rcf:type="ViewColumn" rcf:name="name" rcf:label="品名"></div>
<div rcf:type="ViewColumn" rcf:name="price" rcf:label="価格"></div>
</div>
<div rcf:type="Button" rcf:onClick="add()">追加</div> // (3) |
上記の例では、(3)のボタンがクリックされると、(1)のadd()関数が呼ばれるようになっています。
add()関数では、ModelからテーブルのデータであるtableDataのデータプロバイダを取得し、addItem()関数を利用して新しい配列要素を追加しています。
また、(2)のテーブル部品(TableView)がtableDataをバインディングしており、addItem()関数で変更されたことにより、テーブルの表示内容に1行追加されます。
以下に、画面例を示します。

以下に、部分更新に関する注意事項を示します。
データプロバイダの種類およびAPIについては、“UI部品リファレンス”を参照してください。
目次
索引
![]()
|