【Visualforce】JavascriptからgetElementByIdで値を参照する方法(ループ編)

Salesforce

前回【Visualforce】JavascriptからgetElementByIdで値を参照する方法を書いた時、ループの中のコンポーネントを参照する方法についてまったく触れていませんでした。

ループの中のコンポーネントを参照したい場合は、コンポーネントパスに行番号を含めてあげます。こんな感じ(赤字の部分)。

document.getElementById(‘pg:frm:pb:pgs:pbt:1:tanka’).value;

もう少し具体的なサンプルを書くとこんな感じです。

ボタンがクリックされたら、その行のテキスト入力値をアラートで表示するというサンプルです。

行番号の取得の仕方はこの過去記事で書いてます。
【Visualforce+Apex】テーブルに連番を表示するサンプル

Javascriptへの値の渡し方はこの過去記事で書いてます。
【Apex+Visualforce】Javascriptに値を渡す簡単な書き方。apex:PageBlockTableやapex:repeat。

では、実際に動かしてみます。

想定とおり動きました。

コメント

タイトルとURLをコピーしました