4

ドロップダウンリストがあります

<select name="cate">
  <option value="h">India</option>
  <option value="m">USA</option>
  <option value="c">England</option>
</select>
<input type="submit" value="show">

表示ボタンをクリックすると、下の表に選択した国の詳細が表示されます。詳細はデータベースから取得され、クリックするたびにページが更新されます。

私の問題は、ユーザーがドロップダウンリストでイングランドを選択して[表示]ボタンをクリックすると、詳細が表示されますが、ドロップダウンリストには名のみが表示されることです。選択した値の名前を表示したい。

私を助けてください。

4

4 に答える 4

3

HTMLコード

<input type=hidden id ="selection" name="selection" value="">
<select name="cate">
  <option onclick="document.getElementById('selection').value='h';" value="h">India</option>
  <option onclick="document.getElementById('selection').value='m';" value="m">USA</option>
  <option onclick="document.getElementById('selection').value='c';" value="c">England</option>
</select>

JSPコード

<%
  String selected = request.getParameter("selection");
%>

これで、JSPページを表示しているときに、ユーザーが何を選択したかがわかります。要素をレンダリングするときに、選択したオプションにselect属性を追加します

例:<option value="h"が選択されました>インド</option>

更新ドロップダウンを表示する場所で、選択値と実際に印刷しているもの を確認する必要がある、ある種の検証を行う必要があります。

if(selected ==null || selected.equals('')){
    //do regular printing of the dropdown as you do now
}else{
  out.print("<select>");
  while(rs.next()){
    if(rs.getString("VALUE").equals(selected )){
        out.print("<option value=\""+rs.getString("VALUE")+"\" SELECTED >"+rs.getString("COUNTRY")+"</option>");
    }else{
        out.print("<option value=\""+rs.getString("VALUE")+"\" >"+rs.getString("COUNTRY")+"</option>");
    }
  }
  out.print("</select>");
}

PS:コードはオンザフライで記述されており、例外処理が必要になるか、タイプミスが存在する可能性があります

于 2012-07-03T11:24:41.313 に答える
3
<input type="hidden" name="selectedValue" value="0"/>  

上記のものを選択タグのすぐ下に配置します

サーブレットでこれを行います

String selectedValue = `request.getParameter("selectedValue")` 

次に、selectedValueをサーブレットリクエストに設定します

最終的なjspでJS関数を作成します

function selectedValue(){  

    var value =<%=request.getParameter("selectedValue")%>;  
    if(value !=null)  
        {

        document.f1.slvalue.selectedIndex=value ;          

        }    

} 

最終的なjspページのbodyloadでselectedValue()関数を呼び出します。 「slvalue」は選択タグの名前です

于 2012-07-03T12:13:37.157 に答える
0

タグに追加selectedして<option>、ページに対して最初に選択された値になるようにすることができます。

<option value="h" selected>India</option>

ページが読み込まれるときにインドオプションを選択します。

ページが送信されたときに選択された値に応じてselected正しいタグに追加するには、JSPにロジックを追加する必要があります。<option>

于 2012-07-03T11:15:06.257 に答える
0

クリーンな方法として、Cookieを設定できます。

このjqueryメソッドを見てください:ページ更新後のjQueryCookie設定選択ドロップダウン値

于 2012-07-03T11:21:40.147 に答える