我想用Struts在JSP中创建组合框。我的JSP页面是:
<s:form id="form-sign-up" class="round styled" action="signUp" method="post" name="myForm" theme="xhtml" enctype="multipart/form-data">
<label>Email:</label><input type="text" class="keyup-email text-input" name="7" value="" />
<br />
<br />
<s:textfield name="fname" size="40" maxlength="40" required="true" key="your.FName-label"/>
<s:textfield name="lname" size="40" maxlength="40" required="true" key="your.LName-label"/>
<br />
<s:set var="gender" value="{'male','female'}" />
<s:select label="gender" name="gender"
accesskey="" headerKey="-1" headerValue="I'm..."
cssClass="" list="gender"/>
<br />
<s:password name="Pass" size="40" maxlength="40" required="true" key="your.Pass-label"/>
<s:textarea name="job" label="Job" id="job" cols="32" rows="3" />
<s:submit value="Submit" id="btn-submit" align="left"/>
</s:form>
现在在我的行动中我有:
public class SignUpAction extends ActionSupport {
private String fname;
private String lname;
private String gender;
private String email;
private String pass;
private String job;
public static DataBase db ;
@Override
public void validate(){
}
@Override
public String execute() throws Exception {
DataBase db = new DataBase();
try {
User u1 = new User(fname,lname,gender,email,pass,job);
db.Add_User(u1);
} catch ( HibernateException e ) {
e.printStackTrace();
}
return SUCCESS;
}
... Getters and setters ...
}
我希望获得性别的价值并将其价值保存在我的数据库中,但我无法从JSP获得<s:select...
的值。
您无法获得具有错误类型的列表的值。要选择选项值,您需要列表
List<String> gender;
把你需要的价值放在房产上
String yourGender;
并使用属性名称命名select标记
<s:select name="yourGender" list="gender"
确保定义了getter和setter,如果你引用了默认堆栈,则在提交之后,yourGender
将被设置为你的动作。该值取决于选择。因此,您可以自由选择持久性框架或原始JDBC来将值保存到数据库中。