JSP中Checkbox用法详解
在JSP中通过Checkbox可以实现多选以及默认选中的功能,下面我们来详细讲解Checkbox的用法。
CheckBox的基本语法
Checkbox的基本语法如下:
<input type="checkbox" name="checkName" value="checkValue">Check Box
其中,type属性值是“checkbox”,name属性用于提交数据时的键,value属性用于提交数据时的值。
例如:
<form method="post" action="">
<input type="checkbox" name="hobby" value="reading">读书
<input type="checkbox" name="hobby" value="music">听音乐
<input type="checkbox" name="hobby" value="movie">看电影
<input type="submit" value="提交" />
</form>
上述代码中,三个Checkbox的name属性都是"hobby",表示这些Checkbox属于同一个组,用户可以选择其中的多个。
CheckBox的默认选中
如果希望某些Checkbox默认选中,只需要在标签中添加checked属性即可。
例如:
<form method="post" action="">
<input type="checkbox" name="hobby" value="reading" checked>读书
<input type="checkbox" name="hobby" value="music">听音乐
<input type="checkbox" name="hobby" value="movie">看电影
<input type="submit" value="提交" />
</form>
上述代码中,第一个Checkbox添加了checked属性,表示默认选中。
在JSP中获取CheckBox值
当用户提交表单时,在服务器端可以使用Request对象获取CheckBox的值。如果用户没有选择任何一个Checkbox,那么在Request对象中就不会包含这个参数。如果用户选择了多个Checkbox,那么在Request对象中会有多个值,需要使用getParameterValues方法来获取。
例如,如果在表单中输入了以上示例代码中的数据,获取数据并输出到页面的代码如下:
<%
String[] hobbies = request.getParameterValues("hobby");
if (hobbies != null) {
out.println("你选择了:");
for (String hobby : hobbies) {
out.println(hobby + " ");
}
} else {
out.println("你还没有选择!");
}
%>
以上代码中,getParameterValues返回的是一个数组,需要使用循环获取每个选中值,并进行处理。
实际应用
例如,在一个注册页面中,要求用户填写爱好,其中爱好是多选的Checkbox,同时默认选中了“读书”,代码如下:
<form method="post" action="">
<label>用户名:</label><input type="text" name="username" /><br />
<label>密码:</label><input type="password" name="password" /><br />
<label>爱好:</label><br />
<input type="checkbox" name="hobby" value="reading" checked>读书<br />
<input type="checkbox" name="hobby" value="music">听音乐<br />
<input type="checkbox" name="hobby" value="movie">看电影<br />
<input type="submit" value="提交" />
</form>
<%
String username = request.getParameter("username");
String password = request.getParameter("password");
String[] hobbies = request.getParameterValues("hobby");
if (username != null && password != null && hobbies != null) {
out.println("您注册的信息如下:<br />");
out.println("用户名:" + username + "<br />");
out.println("密码:" + password + "<br />");
out.println("爱好:");
for (String hobby : hobbies) {
out.println(hobby + " ");
}
}
%>
以上代码中,当用户提交表单时,会在页面上输出注册信息,并将爱好的多个选中值以逗号分隔的形式输出到页面。
其他
以上是Checkbox的简单用法,如果需要更高级的操作,可以使用JavaScript来实现。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jsp中checkbox用法详解 - Python技术站