プロパティを使用して複数のパラメータを Struts アクション クラスに渡そうとしてい<html:link>
ます。
リンクがあります。JSP ページからアクション クラスへの 2 つのパラメータが必要です。
これを達成する方法は?
Struts 1.3 では、この例のようにパラメーターをaction
属性に設定できました。
<html:link action="/path/to/action?param1=2¶m2=${param2Value}">Some text</html:link>
ドキュメントからの引用:
ハイパーリンクに追加するすべてのリクエスト パラメータを含む java.util.Map を指定する場合は、次のいずれかの方法を使用します。
- name 属性のみを指定する - 名前付き JSP Bean (オプションで scope 属性の値によって範囲指定) は、パラメーターを含む java.util.Map を識別する必要があります。
- name 属性と property 属性の両方を指定する - パラメータを含む java.util.Map を返すために、name (およびオプションのスコープ) 属性によって識別される Bean で、指定されたプロパティ getter メソッドが呼び出されます。
Map が処理されると、キーはハイパーリンクに追加されるクエリ パラメータの名前であると見なされます。各キーに関連付けられた値は、パラメーター値を表す文字列または文字列配列、または toString() メソッドが呼び出されるオブジェクトのいずれかである必要があります。String 配列が指定されている場合、同じクエリ パラメータ名に対して複数の値が作成されます。
これら 2 つのメソッドを補足することで、1 つ以上のタグをネストして、ロジックに適した方法 (実行時に名前と値のペアを割り当てる for ループの実行など) でパラメーターを動的に追加できます。この方法は、前述の方法と競合しません。すでに指定されているパラメータに加えて、そのパラメータを追加します。
通常の HTMLタグを使用して、JSTL<a>
の標準タグを使用して URL を作成することもできます。<c:url>
なぜあなたはajax呼び出しに行かないのですか? ajaxを使用すると、メソッドKを設定することでアクションクラスに多くのパラメーターを渡すことができます