正文

HTML标记库 - 检查框单选框2007-03-13 10:30:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/hurongliang/23908.html

分享到:

这些标签必须嵌套在html:form中使用

html:checkbox

checkbox的值由value属性指定。
当提交表单时复选框被选中,则传递此参数,若没有被选中则不传递此参数。
eg: <html:checkbox property="mathScore" value="98"> 参数即为:mathScore=98
由此产生一个问题就是如果提交表单时checkbox未被选中则Form Bean里与此复选框对应的字段的值将仍然保存着。解决办法是在Form Bean里的reset()方法里对checkbox字段进行重置。即在reset()方法里设置当checkbox未被选中时表示的值。
eg:
jsp里:
<html:checkbox property="toUpperCase" value="true">转换成大写
Form Bean里:
reset(…){
 toUpperCase=false//初始状态为:不选中
}
若FormBean里的值与checkbox标签的value值相等则选中,否则当FromBean里的对应值为true或yes或on时,复选框被选中否则不选中,这同时产生一个问题:
如上例做如下改动:
jsp里:
<html:checkbox property="toUpperCase" value="false">不转换成大写
Form Bean里:
reset(…){
 toUpperCase=true//初始状态为:选中
}
初始状态下toUpperCase=true时,因为value跟FormBean里的toUpperCase值不等,则考虑FormBean的值,因为为true,所以复选框是处于被选中状态。
当保持选中状态时提交表单,则FormBean里的toUpperCase=false,因为value跟toUpperCase值相等,则复选框再次被选中。
也就是说不管FormBean里的toUpperCase的值是什么,JSP页面上的checkbox始终处于被选中状态。
处理办法是checkbox的值只能设置为true或yes或on。
checkbox一般用于真假判断,他的值一般是true/fasle yes/no on/off,若要表示其他值可以用multibox
如果check没有被选中

html:multibox

其对应的FormBean里的属性可以定义为数组,如:

String[] multibox1 = new String[0];

html:radio

可以在对应的FormBean里的reset()方法里设置初始值,若没有设置则所有radio都处于未选择状态

阅读(4904) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册