1

たとえば、データベース内の特定の ID に関連する入力フィールドに情報があるとします。

たとえば、データベース内の ID によってのみアクセスできる特定のオブジェクトの機能を変更したい場合、そのオブジェクトの ID だけでなく、ユーザーが入力した値も知る必要があります。これを行う方法の 1 つは、入力フィールドを非表示にすることです。

<input type="text" name="valueEntered" />
<input type="hidden" name="id" value="theId"/>
<input type="submit" value="update"/>

これは、サーブレットで結果にアクセスするときに、値の配列を取得する必要があることを意味します

request.getParameter("valueEntered");

name="id" で同様の呼び出しを行うと、ID の配列も取得する必要があります。次に、インデックス 0 の ID がインデックス 0 の機能を持つオブジェクトの ID であるという仮定の下で作業できます。

ただし、id と入力された値の間に既にマッピングがあるように、これを行う別の方法はありますか? のように、インデックス i の id がインデックス i の機能を持つ製品を参照しているという仮定に依存したくありません。

4

2 に答える 2

0

次のように、値の入力フィールドの名前に id を追加できます。

<input type="text" name="valueEntered.theId" />
<input type="hidden" name="id" value="theId"/>
<input type="text" name="valueEntered.secondId" />
<input type="hidden" name="id" value="secondId"/>

このように、フィールドの順序は重要ではありません。

于 2012-11-07T00:25:56.890 に答える
0

各テキストを含むこのhtmlコードがあり、同じ名前が隠されているとします。

<input type="text" name="valueEntered" />
<input type="hidden" name="id" value="1"/>

<input type="text" name="valueEntered" />
<input type="hidden" name="id" value="2"/>

<input type="text" name="valueEntered" />
<input type="hidden" name="id" value="3"/>

<input type="submit" value="update"/>

すべてのテキスト フィールド値と非表示フィールド値を次のように設定できるようになりました。

String textValues[] = getParameterValues("valueEntered");
String hiddenValues[] = getParameterValues("id");

textValues[0]
これで、最初のテキスト フィールドの値を から取得し、最初の非表示フィールドの値をから取得できます。hiddenValues[0]

等々...

于 2012-11-07T06:34:28.810 に答える