2017-02-05 5 views
1

Javascript関数を使用して、次の入力テキストボックスを生成しています。各テキストボックスには、一意のIDだけでなく、一意の名前も付けられます。動的に生成されたフォーム要素をコントローラ側でJavaで処理する

<input type="text" class="form-control" indexed="true" id="skills_0" name="skills_0"> 
<input type="text" class="form-control" indexed="true" id="skills_1" name="skills_1"> 
<input type="text" class="form-control" indexed="true" id="skills_2" name="skills_2"> 

私のコントローラのこのテキストボックスで、ユーザーが入力した値を取得したいとします。私はHibernateフレームワークを使用しています。次のように は通常、休止状態に私が取得した値を使用:

String name=request.getParameter("name"); 

をしかし、私はどのようにiを追加されたどのように多くのスキルを知ることができますside.Alsoコントローラで、この動的に生成されたテキストボックスの値を取得したことがどのように混乱しています私のコントローラのユーザーですか?すなわち

+0

それぞれに異なる「名前」の入力を生成するか、要求のすべてのパラメータのリストを繰り返して、必要なものがあるかどうかを確認します。 –

+0

はい私は自分の質問を編集しましたダイナミックに生成された各テキストボックスに一意の名前を割り当てることもできます...しかし、質問はどのようにしてユーザーがサーバー側でテキストボックスを何回生成したかを知る方法は? – user7324139

+0

すべてのパラメータを繰り返し、あなたが必要とするもの。 –

答えて

0

は..実行時にユーザによって生成されているどのように多くのテキストボックスのHttpで<form>は、入力の名前だけ属性を使用して送信されている。

<input name="someName" value="someValueOfsomeNameInput"/>

はそれほど要求にそれは通常...&someName=someValueOfsomeNameInputのように見えます - 要求を送信する際には「id」を一切使用していません。

それぞれに異なる「名前」の入力を生成するか、要求のすべてのパラメータのリストを繰り返し処理し、必要なものがあるかどうかを確認します。

入力からのすべてのパラメータが送信されるので、リストを取得するには名前に接頭辞を追加して、この接頭辞で始まるパラメータがあるかどうかを確認することができます。また、各パラメータに同じ "名前"を付けてみると、リストとしてまとめることもできます。これはリクエスト内のすべてのパラメータを繰り返し処理するコードスニペットです。要求の中でどのパラメータを取得し、どのように構造化されているかを確認するために使用します。

関連する問題