我有Struts 1.2 bean,如下所示,其中包含数组中的位置
Register.java
public class Register extends ActionForm
{
private String[] userLocation = {"Chennai", "Bangalore", "Delhi", "Singapore"};
.
.
//Getters and Setters
.
.
.
}
我想在Dropdown select in options中填充它。我尝试了以下代码,但它无法正常工作。任何想法如何做到这一点。是否可以通过使用数组使用集合来完成此任务。
RegisterForm.jsp
<html:select property="userSelectedLocation">
<html:options property="id" labelProperty="name" />
</html:select>
答案 0 :(得分:2)
select标签希望在属性中找到选择框的选定值。您将userSelectedLocation
作为属性,但操作表单似乎没有任何getUserSelectedLocation()
方法。
options标签从值集合中获取选项。获取集合的位置取决于三个属性:集合,名称和属性。文档说:
仅指定了属性 - 此属性的值是与表单关联的ActionForm bean的属性名称,该属性将返回集合。
这意味着options标签在动作表单中查找将返回值数组的方法getId()
。你似乎没有这样的方法。
文档清楚地解释了标签的工作原理。如果您告诉我们您想要做什么(您希望选择的选项具有什么值和标签,包含所选值的属性是什么),我们可以告诉您要使用的内容。