我在form表单中有一个复选框 然后提交到另外一个jsp页面 不是直接提交到servlet
<input type="checkbox" name="boxes" value="11">11<br>
<input type="checkbox" name="boxes" value="22">22<br>
<input type="checkbox" name="boxes" value="33">33<br>
<input type="checkbox" name="boxes" value="44">44<br>
在JSP页面我用getParameterValues("boxes");获得的是数组 但是在输出的时候却总是错误
想加个if()判断一下数组长度是否为0 就出现 不带else的if错误什么的
获得的值输出不出来 寻找高人讲解一下 复选框的提交问题 希望能再说一下表单提交到servlet和ajax提交
复选框的处理 谢谢
<input type="checkbox" name="boxes" value="11">11<br>
<input type="checkbox" name="boxes" value="22">22<br>
<input type="checkbox" name="boxes" value="33">33<br>
<input type="checkbox" name="boxes" value="44">44<br>
在JSP页面我用getParameterValues("boxes");获得的是数组 但是在输出的时候却总是错误
想加个if()判断一下数组长度是否为0 就出现 不带else的if错误什么的
获得的值输出不出来 寻找高人讲解一下 复选框的提交问题 希望能再说一下表单提交到servlet和ajax提交
复选框的处理 谢谢
获取
String str=null;
for (int i = 0; i < checkbox.length; i++) {
str += checkbox[i]+""
}
通过for循环把获取的数据连接成一个字符串
2.确认提交的是含有那个多选框的表单
3.确认是否有其他地方修改了那几个input的值
4.如果以上都确认无误的话,那么你就把字符串拼接到url上再传递吧,到跳转的jsp去获取到再解析出来就可以了。
下面输入用户名:<br> <input type="text" id="name" name="name" style={width:200px;}><br>
下面输入密码:<br><input type="password" id="code" name="code" style={width:200px;} ><br>
选择性别:<br> <input type="radio" name="sex" value="男" id="sex">男
<input type="radio" name="sex" value ="女" id="sex">女
<input type="radio" name="sex" value="李宇春" id="sex">李宇春<br>
选择你的从业经历(以下内容请至少选择一项):<br>
<input type="checkbox" name="boxes" value="11">11<br>
<input type="checkbox" name="boxes" value="22">22<br>
<input type="checkbox" name="boxes" value="33">33<br>
<input type="checkbox" name="boxes" value="44">44<br>
<input type="checkbox" name="boxes" value="55">55<br>
<input type="checkbox" name="boxes" value="66">66<br>
<input type="checkbox" name="boxes" id="txt">自己写
<input type="text" name="txt"><br>
<input type="submit" value="注册">
</form>
下面是接受页面的代码<%request.setCharacterEncoding("utf-8");
response.setHeader("iso-8859-1","utf-8");
response.setCharacterEncoding("utf-8"); %>
<%! String name=" ",code=" ",sex=" ",txt=" "; %>
<% name = request.getParameter("name"); %>
<% code = request.getParameter("code"); %>
<% sex = request.getParameter("sex"); %>
<%String arr[] = request.getParameterValues("boxes"); %>
姓名: <%=name %><br>
密码: <%=code %><br>
性别: <%=sex %><br>
选项:
<%System.out.print(arr.length); %>
<%if(arr.length==0) %>
<%{ %>
<%="复选内容没有选择" %>
<% }else {%>
<%for(int i = 0;i<arr.length;i++){ %>
<%=arr[i] %>
<%}
} %>
这样的话一直会报错 页面一直接跳转不过来 删掉 if-else页面就不报错了 实在是弄不明白怎么回事啊
<%
request.setCharacterEncoding("utf-8");
response.setHeader("iso-8859-1", "utf-8");
response.setCharacterEncoding("utf-8");
String name = " ", code = " ", sex = " ", txt = " ";
name = request.getParameter("name");
code = request.getParameter("code");
sex = request.getParameter("sex");
String[] arr = request.getParameterValues("boxes");
String str = "";
if (arr == null || "".equals(arr)) {
str = "复选框未选中";
} else {
for (int i = 0; i < arr.length; i++) {
str += arr[i] + " ";
}
} %>
姓名:
<%=name%><br>
密码:
<%=code%><br>
性别:
<%=sex%><br>
选项:
<%=str%>
</body>你改成这样试试就行了啊 哈哈