2

私の JSP には、1 つのドロップダウン ボックスと項目のテーブル (for ループを使用) があり、各項目は独自のフォームであり、すべて同じサーブレットに送られます。私の問題は、ドロップダウンボックスの選択をどこに置くかです。アイテムごとにドロップダウンがあるため、アイテムフォームに入れたくありません。しかし、別のフォームを作成すると、アイテム フォームを送信するときにサーブレットからドロップ ダウン パラメータを取得できません。ドロップダウン パラメータと項目パラメータを取得する必要があります。これに近づくためのアイデアはありますか?ドロップダウンフォームから選択した値を格納するアイテムフォームに非表示の入力をする方法はありますか? 私はJavaScriptを使用していません。

4

2 に答える 2

0

他の形にしてください。すべてのアイテム フォームで、隠しフィールドを 1 つ作成します。

<select id="DD">
  <option value="1">1</option>
  <option value="2">2</option>
  <!-- so on ... -->
</select>

<form id="i1">
<input type="hidden" id="dropDownValue" value="">
<!-- your code -->
</form>
<form id="i2">
<input type="hidden" id="dropDownValue" value="">
<!-- your code -->
</form>
<form id="i3">
<input type="hidden" id="dropDownValue" value="">
<!-- your code -->
</form>
<form id="i3">
<input type="hidden" id="dropDownValue" value="">
<!-- your code -->
</form>

ここで、submit の前に、JS で hiddenfield "dropDownValue" の値を設定します。

于 2013-11-15T08:16:57.433 に答える
0

項目ごとに 1 つのフォームを持つことを再考します。セレクトボックスを含め、すべての項目が 1 つのフォームで十分です。したがって、代わりに:

<select>...</select>
<form><input type="hidden" name="id" value="1"/><input type="submit" value="Edit"/></form>
<form><input type="hidden" name="id" value="2"/><input type="submit" value="Edit"/></form>

あなたが持つことができます

<form>
    <select>...</select>
    <input type="submit" name="edit:1" value="Edit"/>
    <input type="submit" name="edit:2" value="Edit"/>
</form>

サーブレットでは、すべてのリクエスト パラメータ ( ) を繰り返し処理し、プレフィックスrequest.getParameterNames()で始まるパラメータを探します。edit:見つかった場合は、プレフィックスをサブトラックするだけでアイテムの識別子を取得できます。それ以外の場合は、隠しフィールドに送信する必要があります。選択ボックスの値も送信されます。「削除」などの別のアクションが必要な場合は、同じ HTML フォーム内に別のプレフィックスを持つ送信入力を追加するだけです。

于 2013-11-15T08:33:46.903 に答える