デザインをご紹介します。
JSPの各フィールドは、によって作成されMap
ます。ラベル名、入力タイプ(ドロップダウンまたはその他)、入力値、デフォルト値などが、たとえばに追加されMap
ますMap nameAttributes
。GeneralWriter writer
私がアクセスできない別のクラスがあります。このクラスは、から値をMap
取得し、それらを解析して適切なHTMLコードを記述します。
マップを書き込んだ後、writer.writeSelectBox(nameAttributes);
が呼び出されます。
ここで、要件は次のとおり
です。ドロップダウンメニューがあり、選択した値に応じて、他のいくつかのドロップダウンメニューが無効(UIに表示されますが、変更できません)または有効になります。追加されたフィールドのHTMLコードを記述していないため、関数呼び出しイベントを記述して作業を行うことはできません。
onMouseOut
に見られるように、フィールドからのイベントでJS関数が呼び出されることを確認しました"View Source"
。そこで、フィールド値を確認して他のドロップダウンメニューに影響を与えるために、そこにコードを記述できると思いました。しかしalert
、JS関数を(チェックするためだけに)書き込んだ場合、警告は表示されません。つまり、関数が呼び出されず、有効化/無効化コードを記述できません。
その仕事を成し遂げる方法はありますか?有効化と無効化は、ユーザーがドロップダウンの1つで何を選択するかによって異なります。
サンプルコード:
<%
Map nameAttr = new HashMap();
nameAttr.put(GeneralConst.INPUT_MESSAGE, Const.MSG_FIELD_NAME);
//.....
writer.writeAllSelectBox(nameAttr);
%>
緊急の助けが必要です、ありがとう。