我有一个使用下拉列表的 Struts2 应用程序。我用来自用户 bean 的 userId 和 userName 填充了这个下拉列表,如下所示
public class DropDown extends ActionSupport{
private List arrUserDetails = new ArrayList<Users>();
public DropDown()
{
Users objUsers = new Users();
objUsers.setUserId("101");
objUsers.setUserName("User1");
arrUserDetails.add(objUsers);
objUsers.setUserId("102");
objUsers.setUserName("User2");
arrUserDetails.add(objUsers);
objUsers.setUserId("103");
objUsers.setUserName("User3");
arrUserDetails.add(objUsers);
}
public String execute(){
return SUCCESS;
}
public List getArrUserDetails() {
return arrUserDetails;
}
public void setArrUserDetails(List arrUserDetails) {
this.arrUserDetails = arrUserDetails;
}
}
用户 bean 如下所示
用户.java
public class Users
{
private String userId;
private String userName;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
我使用 Struts2 标记库在 JSP 中编写了一个代码来迭代列表,以便填充下拉列表
<s:select label="UserList" list="arrUserDetails" name="yourSearchEngine" />
但它在下拉列表中显示内存位置,而不是 Option 的 UserName 和 UserId 作为 Value
预期产出
<select name="">
<option value="101">User1</option>
<option value="102">User2</option>
<option value="103">User3</option>
</select>