いくつかの計算フィールドと繰り返しコントロールを使用して、HTML リスト ボックスを表示しています。リストボックスの選択をページングするページャーなど、うまく機能します。
ここで、リスト ボックスの onclick イベントが必要です。クライアント側のクリック イベントでは、フィールドに入力する必要があります。クリック イベントは正常に機能しますが、フィールドへのハンドルを取得する方法がわかりません。
デザイナーのクライアント クリック イベントでは、次のように簡単に実行できます。
しかし、デザイナーを実際に使用していないため、これはうまくいかないように見えるので、 #{id:lastSelected} は正しく定義されていませんか?
デザイナーを介してイベントを追加できるように、オプション ラインをクリック可能にする方法はありますか?
または、「#{id:lastSelected}」をクライアント JavaScript 内で解決できる方法がありますか? 多分XSP関数を呼び出しますか?
これは、リストボックスの最初の部分を作成する計算フィールドです。onclick イベントをどのように実行しているかに注意してください。
var id = "id='" + getClientId("searched") +"ListBox'"; //Generate a unique id for the list box using the computed field name
var size= "size=" + compositeData.listBoxSize.toString();
var style = "style='width:275px;'";
var multi = (compositeData.multipleSelect==true) ? "multiple" : ""
return "<select " +id + " " + size + " " + style + " " + multi + " onclick='searchedListBoxSingleLeftClick();'>";
各オプション行を計算する方法は次のとおりです。この計算フィールドは繰り返しコントロール内にあります
var name = rowData.getColumnValues()[1];
return "<option " + " id='" + rowData + "' value='" + rowData.getUniversalID() + "'>" + name + "</option>"