Forguncyマニュアル
リストビューに対する操作
Forguncyの使い方 > コーディングによるカスタマイズ > カスタムJavaScript > JavaScript API > リストビューに対する操作

名前を指定して特定のリストビューにアクセスできます。リストビューの現在行(カレントレコード)の変更、リストビュー内の特定のセルの値の変更といった操作を提供しています。ここで使用しているリストビュー名やセル名は、リストビューの名前定義で指定したものになります。

リストビュー内の特定のセルの値の取得

ListViewのgetValueメソッドを使用することで、リストビュー内の特定のセルの値の取得できます。

以下のサンプルコードの例では「button1」というボタン型セルをクリックした際に、「リストビュー1」という名前のリストビューの1行目にある「column1」という列名の値がアラートダイアログに表示されます。行番号は0から始まるため、getValueメソッドの第一引数が0となっていることに注意してください。また、第2パラメーターにはテーブルのフィールド名ではなく、リストビューに設定された列名を指定することにも注意してください。

このコードをそのままjsファイルとして利用する場合、「ページ設定」タブの「カスタムJavaScript」でファイルとして設定することで動作します。あるいは、「ページ設定」タブの「ページロード時のコマンド」から「JavaScriptのコードの実行」を選んでコードを記載する場合は、コードの「p.ready(function () {」と「})」を削除してください。これは、このコマンド自体がページの準備ができた時点で発生するため、ページの準備ができたかどうかを確認する「p.ready」が不要になるためです。詳細はPageを参照してください。

JavaScript
コードのコピー
var p = Forguncy.Page;
p.ready(function () {
    p.getCell("button1").bind("click", function () {
        var mylist = p.getListView("リストビュー1");
        alert(mylist.getValue(0, "column1"));
    })
});

リストビュー内現在行(カレントレコード)セルの値取得

ListViewのgetSelectedRowIndexメソッドを使用することで、現在行(カレントレコード)の行番号を取得できます。

以下のサンプルコードの例では、リストビューのgetValueメソッドの第一引数にgetSelectedRowIndexメソッドを使用して取得した値を渡すことで、現在行(カレントレコード)を移動し「cell1」という名前のセルの値を変更します。

このコードをそのままjsファイルとして利用する場合、「ページ設定」タブの「カスタムJavaScript」でファイルとして設定することで動作します。あるいは、「ページ設定」タブの「ページロード時のコマンド」から「JavaScriptのコードの実行」を選んでコードを記載する場合は、コードの「p.ready(function () {」と「})」を削除してください。これは、このコマンド自体がページの準備ができた時点で発生するため、ページの準備ができたかどうかを確認する「p.ready」が不要になるためです。詳細はPageを参照してください。

JavaScript
コードのコピー
var p = Forguncy.Page;
p.ready(function () {
    var mylist = p.getListView("リストビュー1");
    mylist.bind("selectionchanged", function () {
        p.getCell("cell1").setValue('現在選択されているのは、「' + mylist.getValue(mylist.getSelectedRowIndex(), "column1") + '」です。');
    })
});