簡體   English   中英

如何填充jsp下拉?

[英]How to populate jsp drop down?

我正在嘗試填充下拉列表。 我有一個hashmap,從中我獲得了關鍵和價值。 我有一個bean,我從中得到一個字符串值。 現在我想填充這樣的下拉列表:

如果bean值等於hashmap鍵,那么我必須在下拉列表中將鍵和值設置為“selected”,否則,字符串“plz select a value”必須成為默認的下拉選擇元素,其他鍵值對必須來吧。 如果bean值等於hashmap鍵,則不能再次重復它們。

這是我迄今為止所擁有的:

<%
String defaultText = "Please select a value";
while (iterator.hasNext()) {
Map.Entry mapEntry = (Map.Entry) i.next();
// getKey Method of HashMap access a key of map
String keyValue = (String) mapEntry.getKey();
//getValue method returns corresponding key's value
String value = (String) mapEntry.getValue();

%>

<option  selected="selected" value="none">
<%
if( beanNo!=null && beanNo.equals(keyValue))
{
%>
<%= beanNo %> , <%= value %>
<%
}
else
{
%>
<%= defaultText %>
<%
}
%>
</option>
<option  value="">
<%= value %> , <%= keyValue %>
</option>
<%
}
%>

但是,這並沒有給我預期的結果。 如果bean值等於hashMap keyValue,則相同的值將出現兩次,而defaultText根本不會出現。

我哪里錯了? 請幫忙嗎?

這應該更好:

<%
    String defaultText = "Please select a value";
%>
<option value="none"><%= defaultText %></option>
<%
    while (iterator.hasNext())
    {
        Map.Entry mapEntry = (Map.Entry) i.next();
        // getKey Method of HashMap access a key of map
        String keyValue = (String) mapEntry.getKey();
        //getValue method returns corresponding key's value
        String value = (String) mapEntry.getValue();
%>
<option <%= (beanNo!=null && beanNo.equals(keyValue)) ? "selected=\"selected\"" : "" %> value="<%= value %>">
<%= keyValue %>
</option>
<%
    }
%>

注意:它尚未經過測試或驗證語法,可能存在一些小錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM