📄 html-checkbox.jsp
字号:
<%@ page contentType="text/html;charset=GB2312" import="java.util.*"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html>
<head>
<html:base/>
<title><html:checkbox></title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body bgcolor="white">
<h1><html:checkbox></h1>
<p><html:checkbox>生成网页上的选择框,它必须存在于一个表单范围内,因此也就说明在ActionForm必须使用一个字段
来接收从表单传过来的值。一般情况下,在ActionForm中都使用布尔型变量来表示一个checkbox,这是因为它要么没被选中,要么
就是被选中。以下是一段示例代码:</p>
<font class="CodeStyle">
<html:form action="/test.do"><br>
checkbox1:<html:checkbox property="checkbox1"/><br>
checkbox2:<html:checkbox property="checkbox2"/><br>
<html:submit property="submit" value="测试"/>
</html:form><br>
</font>
<p>这样一段代码生成的html如下所示:</p>
<font class="CodeStyle">
<form name="testbean2" method="post" action="/taglib1/test.do"><br>
checkbox1:<input type="checkbox" name="checkbox1" value="on"><br>
checkbox2:<input type="checkbox" name="checkbox2" value="on"><br>
<input type="submit" name="submit" value="测试"><br>
</form><br>
</font>
<p>可以看到,checkbox的value为on,这一点需要特别注意。当某个checkbox被选中时,使用checked属性来表示,代码如下:</p>
<font class="CodeStyle">
<input type="checkbox" name="checkbox1" value="on" checked="checked">
</font>
<p>另外,有一点需要特别注意。为了让checkbox能够正确的显示,应当在ActionForm的reset()方法中对其进行复位。也就是
在ActionForm的reset()方法中加入如下代码:</p>
<font class="CodeStyle">
public void reset(ActionMapping mapping, HttpServletRequest request){<br>
this.checkbox1 = false;<br>
this.checkbox2 = false;<br>
}<br>
</font>
<p>如果不对checkbox进行复位,那么一个checkbox一旦被选中,就会永远处于被选中的状态。发生这种情况的原因是,在html中
浏览器不会向Web服务器发送一个类似于"某某选择框没有被选中"这样的信息,因此,当一个checkbox被选中后,即便下一次用户将
它的勾去掉,Web服务器端也将认为它是被选中的。</p>
<p>运行效果如下所示:</p>
<html:form action="/test.do">
checkbox1:<html:checkbox property="checkbox1"/><br>
checkbox2:<html:checkbox property="checkbox2"/><br>
<html:submit property="submit" value="测试"/>
</html:form>
<p>
<a href="index.jsp">返回主页面</a>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -