Strust2 jQuery プラグインで内部的に使用されているpublish
/フレームワークを使用したい。subscribe
ユーザーは、リストからアカウント番号を選択するか、テキストボックスに入力できます。
テキスト ボックスまたは選択オプションが変更されたときにイベントを発行したい。したがって、ユーザーはテキストボックスを入力するか、選択ボックスから何かを選択することしかできません:
<s:textfield name="account" onblur="$.publish('accountChanged',this,event)"/>
<s:select name="accountList" list="destinationAccounts"
onblur="$.publish('accountChanged',this,event)"/>
以下はjsです:
$.subscribe('accountChanged', function(event, data) {
alert("New data is: " + data.value);
if ( event.target.id=='account') {
//Do something
}
}
問題は次のとおりです。
- data.value はテキストボックスでのみ機能し、選択ボックス
data.value
は未定義です。 - どのターゲットがイベントを受け取ったか知りたいです。
event.target.id
動かない!イベント オブジェクトは jQuery イベント オブジェクトではないと思いますか?
サンプル ショーケース アプリケーションを確認しましたが、何も見つかりませんでした。
$.publish
メソッドを正しく呼び出していますか? より良い方法はありますか?