[英]html form processing in java servlet
我正在构建一个Java Servlet来响应某些HTML表单。 这是简单的测试表格:
<FORM action="http://somesite.com/prog/adduser" method="post">
<P>
<LABEL for="firstname">First name: </LABEL>
<INPUT type="text" id="firstname"><BR>
<LABEL for="lastname">Last name: </LABEL>
<INPUT type="text" id="lastname"><BR>
<LABEL for="email">email: </LABEL>
<INPUT type="text" id="email"><BR>
<INPUT type="radio" name="sex" value="Male"> Male<BR>
<INPUT type="radio" name="sex" value="Female"> Female<BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</P>
</FORM>
在服务器端,我得到了HttpRequest。 但是当我得到这样的参数时:
@Override
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String firstName = req.getParameter("firstname");
String lastName = req.getParameter("lastname");
String sex = req.getParameter("sex");
String email = req.getParameter("email");
}
只有“性别”可以。 我已经花了几个小时不了解为什么“性别”与其他性别不同。 所有其他参数为空。 好的,这是唯一的“无线电”类型,但是是否有一种特殊的方法来获取其他参数?
谢谢!
在HTML表单中,为Input值赋予Name属性非常重要,ID属性仅有助于页面中的Javascript更好地查找Input元素。
我注意到您错过了第一个Input元素的Name属性。
您需要与其余输入标签一起添加name
属性,就像对sex
输入标签进行添加一样:
<FORM action="http://somesite.com/prog/adduser" method="post">
<P>
<LABEL for="firstname">First name: </LABEL>
<INPUT type="text" id="firstname" name="firstname"><BR>
<LABEL for="lastname">Last name: </LABEL>
<INPUT type="text" id="lastname" name="lastname"><BR>
<LABEL for="email">email: </LABEL>
<INPUT type="text" id="email" name="email"><BR>
<INPUT type="radio" name="sex" value="Male"> Male<BR>
<INPUT type="radio" name="sex" value="Female"> Female<BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</P>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.