新規作成と削除
[New] ボタンと [Delete] ボタンのJavaScript イベント・ハンドラを追加します。
以下の関数を HomePage.cls に追加します。
/// Create new object via dataModel
ClientMethod newContact() [ Language = javascript ]
{
var controller = zenPage.getComponentById('contactData');
var contactFormGroup=zenPage.getComponentById("contactFormGroup");
contactFormGroup.setProperty('hidden',false);
controller.createNewObject();
}
この関数は、[New] ボタンのイベント・ハンドラです。dataController を使用して、新しい Contact オブジェクトを作成します。dataController は次に ContactModel 内のサーバ側 %OnNewSource メソッドを呼び出し、新しい Contact をインスタンス化します。[Save] が押されるまで、Contact はデータベースに保存されません。
以下の関数を HomePage.cls に追加します。
/// Delete current item from database
ClientMethod deleteContact() [ Language = javascript ]
{
var controller = zenPage.getComponentById('contactData');
controller.deleteId(controller.getModelId());
var table = zenPage.getComponentById('contactTable');
//refresh data in contact table
table.executeQuery(true);
controller.update();
}
この関数は、[Delete] ボタンのイベント・ハンドラです。dataController を使用して、現在の Contact をデータベースから削除します。dataController は次に ContactModel 内の サーバ側 %OnDeleteSource メソッドを呼び出し、Contact を削除します。Contact が削除されると、tablePane の executeQuery メソッドを使用してテーブル内のデータが更新されます。