我正在尝试用这样的单选按钮制作一个注册表单
然后我使用表单验证另一个 .jsp
文件的输入
<form action="Controller/doRegister.jsp" method="post">
<table bgcolor="#000000" align="center" cellspacing="5px">
<tr>
<td>Gender</td>
<td>
<input type="radio" name="rdo" id="gender_male" value="male"> Male
<input type="radio" name="rdo" id="gender_female" value="female"> Female</td>
</tr>
</table>
通过验证
String userGender = request.getParameter("rdo");
if(userGender!="male"&&userGender!="female")
response.sendRedirect("../register.jsp?msgErr=Gender must be chosen "+userGender);
但是当我尝试这个表单时,我收到了一条错误消息
"Gender must be chosen"
即使我选择了单选按钮。当我认为 userGender
按钮可能没有收到任何值时,我打印了 userGender
并显示“男性”。请告诉我哪里出了问题。
最佳答案
我假设你应该使用
if(!userGender.equals("male")&&!userGender.equals("female"))
因为我们没有使用 '=' 或 '!=' 进行字符串比较。
为避免 NullPointer,请在执行比较之前检查 userGender 是否为 null:
if(userGender!=null)
{
if(!userGender.equals("male")&&!userGender.equals("female"))
response.sendRedirect("../register.jsp?msgErr=Gender must be chosen "+userGender);
}
关于html - JSP 中的单选按钮验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37327769/