访问使用Java选择下拉菜单项(Accessing selected dropdown items

2019-11-04 05:21发布

我有一个由语言名称的下拉。 我设置的值,并通过使用一个HashMap显示下拉菜单的名称。

 <form action="TextTranslation" method="post" class="form" role="form" >
        <div class="row">
            <div  id = "imageView" class="col-lg-8 center-block ">

         <div class="btn-group"> 
         <select name="country">

            <% 

          Map<String,String> langCode = x.getCountryList();
           for( Object key :langCode.keySet() )
           {%>


           <option value="<%=(String)key%>"><%=langCode.get(key) %> </option>
              <% 

              System.out.println((String)key);
           }

           String name =  request.getParameter("country");
           request.setAttribute("code", name);

            %>



        </select>
    </div>
        <input type="submit" class= "btn btn-image" value="Translate">

                <a href="#search" class="btn btn-default bg-light-gray">Search Text</a>

            </div>
        </div>
          </form>

值被正确地传递到Dropbox的,因为它打印控制台中的所有值。 该组属性在特定的servlet访问。 但是它给出了一个空值。 你有什么想法?谢谢你在前进

更新

<select name="country"> 
    <% 
       Map<String,String> langCode = x.getCountryList(); 
        for( Object key :langCode.keySet() ) 
          {%>
               <option value="<%=(String)key%>"><%=langCode.get(key) %> /option> 
               <% System.out.println((String)key); 
           } 
         String name = request.getParameter("country"); 
    %> 
</select> 

<input type="hidden" name="code" value = <%= name%>/> .

在servlet我用,

 request.getParameter("code");

Answer 1:

同样更新你的JSP,

<form...>
...
<input type="hidden" name="code" value = <%= name%>/> 
....
</form>

然后从你的servlet得到它同样,

 request.getParameter("code"); // will return value of code

注意 :

从您的删除jsp-code ,如果上述方案你要实现的话,

 request.setAttribute("code", name);


文章来源: Accessing selected dropdown items using Java