そのタイトルが正しく表現されているかどうかはわかりません。私がやろうとしていることを説明しましょう:
フォームを含むファイルnew.jspがあります
<s:form id="newdep" name="newdep" theme="simple" action="submitForm" >
このフォームには選択ボックスがあります。
<s:select list="apps" name="app" onchange="javascript:show_details();return false;" />
私は ajax に Dojo を使用しています。
function show_details() {
dojo.event.topic.publish("show_detail");
}
また、このフォーム内には次のものがあります。
<s:url id="d_url" action="showComp" />
<sx:div id="details" href="%{d_url}" listenTopics="show_detail" formId="newdep" showLoadingText=""/>
これはcomp.jsp
action でオンザフライで呼び出しますshowComp
。
「アプリ」選択ボックスでの選択に応じて、いくつかのテキストフィールドが表示されます。
より具体的には、アプリが選択されると、lstList
そのアプリに固有のハッシュマップが (CompAction
のアクション クラス内にshowComp
) 作成され、次のように表示されます。
<s:iterator value="lstList">
<s:property value="key" />
<s:textfield name="value" value=""/> <!-- LINE I'M ASKING ABOUT -->
<s:iterator value="value">
<br>
</s:iterator>
正しくないと思うので、テキストフィールドの行を強調表示しました。基本的に、私がやりたいことは次のとおりです。
- ユーザーにドロップダウンからアプリを選択してもらいます。(終わり)
comp.jsp
が呼び出され、それぞれのハッシュマップ + テキスト フィールドから関連するラベルが表示されます。(終わり)- ユーザーが送信ボタンをクリックすると、テキストフィールドへのユーザーのエントリがハッシュマップに保存されます (機能しません) 。
この時点で、送信をクリックするとユーザーが に送信されることに注意してくださいresults.jsp
。
このページから、より大きなアクション クラスのデータに簡単にアクセスできますFormAction
。CompAction
しかし、 (もう一度言いますが、ajax アクションのアクション クラス) からデータ (ハッシュマップなど) にアクセスする方法がわかりません。
4. results.jsp からハッシュマップ データにアクセスします (これも機能しません) 。
私の自然な本能は使用することでした
<s:property value="%{lstList}" />
運がresults.jsp
悪い。私はストラットにはかなり慣れていませんが、良い感触を得られるように最善を尽くしています。何かアドバイス?