2016-03-31 7 views
0

この質問はHow to post multiple <input type="checkbox" /> as array in PHP?と同じですが、私の解決策を私のJavaサーブレットの設定で動作させることはできません。グループ化されたチェックボックスのnameプロパティに[]を追加するapporachを使用すると、私は最初にチェックされたオプションのみを取得します。私はそれが1つの要素だけを含む実際の投稿された配列であるかどうか、または私はそれを右のサーバー側にアクセスしていない場合はわからない。ここで私はJavaで値をチェックするために何をすべきかです:複数の<input type = "checkbox" />を配列としてJavaサーブレットに投稿するにはどうすればいいですか?

@Override 
public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception { 
    for(String name : request.getParameterMap().keySet()){  
     System.out.println(name +": " + request.getParameter(name));   
    } 
} 

これは私が米国の入力後にチェックよりchecboxesを持っている場合でも、countries[]: USを印刷します。値が変更された後、チェックボックスはチェックされたもののうち最初のものです。私は間違って何をしていますか?

<form action="mypage" method="post"> 
    <input id="cb-country-gb" type="checkbox" name="countries[]" class="hide" value="GB"/> 
    <input id="cb-country-us" type="checkbox" name="countries[]" class="hide" value="US"/> 
    <input id="cb-country-ge" type="checkbox" name="countries[]" class="hide" value="GE"/> 
    <input id="cb-country-es" type="checkbox" name="countries[]" class="hide" value="ES"/> 
    <button type="submit" class="btn btn-primary">Search</button> 
</form> 
+0

'getParameterValues(" countries ")'を使用すると、Javaでは '[]'は必要ありません。これはPHPのものです – Ramanlfc

+0

素晴らしいです。 [] - 清算してくれてありがとう。 – KjetilNordin

答えて

1

を使用する必要があります。

テストを次のコードであること:

@Override 
public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception { 
    for(String name : request.getParameterMap().keySet()){ 
     for(String value : request.getParameterValues(name)){ 
      System.out.println(name +": " + value);   
     } 
    } 
} 
1

あなたが複数のチェックボックスをチェックすると、要求が名前countries[]で複数のパラメータが含まれています

は、ここに私のHTMLです。

request.getParameter("countries[]")に電話すると、最初のパラメータ値のみが返されます。

代わりにあなたはあなたが与えられたリクエストパラメータ全ての値含むStringオブジェクトの配列を返し[getParameterValues][1]使用する必要があります

String[] checked = request.getParameterValues("countries[]"); 
if (checked != null) 
    ... 
+0

ありがとうございます。これはとても役に立ちました! – KjetilNordin

関連する問題