checkbox的使用
来源:互联网 发布:java线程 csdn 编辑:程序博客网 时间:2024/05/21 11:36
checkbox的使用
[pre] 在jsp或者html页面中,经常会用到checkbox。比如这样定义:[/pre]
[pre]提交后的我们可以直接从request对象中取得所有在页面中选择的checkbox列表。
以上面的定义为例,如果在页面中选择了value为1、2、5的checkbox项,则可以
这样获得选择项:[/pre]
[pre]有可能一些初级的web程序员也会这样定义:[/pre]
[pre]然后,在后台取数据时这样获得选择项:[/pre]
[pre]这样也可以解决问题,但是比较起来,后者用的是死办法,而且维护起来
非常不便,在此不推荐。[/pre]
[pre] 经常有这样的情况,在页面中,有一批动态的checkbox列表项和
一个提交的按钮,业务逻辑需要至少选择一个列表项数据之后,才可以真正
提交。可以用一个javascript解决:
假设页面定义和相关代码如下:[/pre]
[pre]上面的定义中,如果checkbox列表中有多余一个数据时,可以工作正常,但是如果只
有一个的话(因为checkbox列表是动态的),那么永远都不会提交(不信你可以试一试)。
经过研究,发现原来是html语言的定义有问题。如果checkbox的列表项只有一个
的话,那么checkIdOjb.length是不存在的。
所以,可以将以上的javascript改一下:[/pre]
checkbox的使用
1、checkbox定义
[pre] 在jsp或者html页面中,经常会用到checkbox。比如这样定义:[/pre]
- <input type="checkbox" name="check_id" size="6" value="1" >
- <input type="checkbox" name="check_id" size="6" value="2" >
- ...
- <input type="checkbox" name="check_id" size="6" value="9" >
[pre]提交后的我们可以直接从request对象中取得所有在页面中选择的checkbox列表。
以上面的定义为例,如果在页面中选择了value为1、2、5的checkbox项,则可以
这样获得选择项:[/pre]
- String[] checkIds = request.getParameterValues("check_id");
[pre]有可能一些初级的web程序员也会这样定义:[/pre]
- <input type="checkbox" name="check_id1" size="6" value="1" >
- <input type="checkbox" name="check_id2" size="6" value="2" >
- ...
- <input type="checkbox" name="check_id9" size="6" value="9" >
[pre]然后,在后台取数据时这样获得选择项:[/pre]
- String checkId1 = request.getParameterValues("check_id1");
- String checkId2 = request.getParameterValues("check_id2");
- ...
- String checkId9 = request.getParameterValues("check_id9");
[pre]这样也可以解决问题,但是比较起来,后者用的是死办法,而且维护起来
非常不便,在此不推荐。[/pre]
2、checkbox的校验
[pre] 经常有这样的情况,在页面中,有一批动态的checkbox列表项和
一个提交的按钮,业务逻辑需要至少选择一个列表项数据之后,才可以真正
提交。可以用一个javascript解决:
假设页面定义和相关代码如下:[/pre]
- <script language=javascript>
- function okClick(){
- //获得选择的check列表对象
- var checkIdObj = eval("form1.check_id");
- //判断对象是否为空
- if (checkIdObj == null) {
- return;
- }
- for (i=0; i<checkIdObj.length; i++) {
- if(checkIdObj[i].checked){
- form1.submit();
- return;
- }
- }
- }
- </script>
- <form name="form1" method="post" action="..">
- <!-- 下面的checkbox列表是动态的,有可能是从数据库中读取出来,所以有可能列表中只有一个数据-->
- <input type="checkbox" name="check_id" size="6" value="1" >
- <input type="checkbox" name="check_id" size="6" value="2" >
- ...
- <input type="button" name="ok" onclick="okClick()" value="确定">
- </form>
[pre]上面的定义中,如果checkbox列表中有多余一个数据时,可以工作正常,但是如果只
有一个的话(因为checkbox列表是动态的),那么永远都不会提交(不信你可以试一试)。
经过研究,发现原来是html语言的定义有问题。如果checkbox的列表项只有一个
的话,那么checkIdOjb.length是不存在的。
所以,可以将以上的javascript改一下:[/pre]
- <script language=javascript>
- function okClick(){
- //获得选择的check列表对象
- var checkIdObj = eval("form1.check_id");
- //判断对象是否为空
- if (checkIdObj == null) {
- return;
- }
- //如果check列表对象多于一个
- if(checkIdObj.length){
- for (i=0; i<checkIdObj.length; i++) {
- if(checkIdObj[i].checked){
- form1.submit();
- return;
- }
- }
- }
- //否则
- else{
- if(form1.check_id.checked){
- form1.submit();
- return;
- }
- }
- }
- </script>
- checkbox的使用
- checkbox的使用
- checkbox的使用
- checkbox 的使用
- javascript checkBox的使用
- BCB CheckBox的使用
- MFC CheckBox的使用
- checkbox的使用
- 多选框CheckBox的使用
- html checkbox的使用
- CheckBox的使用
- CheckBox的简单使用
- flex itemRenderer CheckBox 的使用
- CheckBox列表的使用实例
- 多项选择(CheckBox)的使用
- RadioGroup和CheckBox的使用
- MFC CHECKBOX控件的使用
- MFC中的CheckBox的使用
- ★小不点★
- apache2.2和tomcat5.5整合(绝对可行)
- #pragma once 文件编译一次
- asp.net 部署数据库、开始菜单、桌面快捷方式实例
- 找出识别不了的移动硬盘
- checkbox的使用
- 如何提高Hibernate 3 启动速度
- java实现删除文件夹及文件夹下所有文件
- 小议static
- Hibernate 深入研究之 Criteria
- 正则表达式学习笔记
- c#中选择文件夹而不是文件的简单方法
- 一个尚未发现bug的小程序
- 使用用户自定义函数进行自定义查询