最近要实现一个功能,就是checkbox跨页多选,在网上看了一下,资料很少,而且大多是不完全的。不过经过我的努力,终于做出来了。

JSP页面:
1,定义三个Hidden变量:
<INPUT type="hidden" name="all_selected"> <INPUT type="hidden" name="now_selected"> <INPUT type="hidden" name="no_selected">
2,javascript
// 获取checkbox信息,选中,未选中,当前选中
function getCheckBoxInformation() {
var checkboxes = document.getElementsByName("checkbox");
var checkedStr = "";
var uncheckedStr = "";
var url = "";
for(var i = 0; i < checkboxes.length; i++) {
var checkbox = checkboxes[i];
if(checkbox.checked) {
checkedStr = checkedStr + "," + checkbox.value;
}else {
uncheckedStr = uncheckedStr + "," + checkbox.value;
}
}
document.form1.now_selected.value = checkedStr;
document.form1.no_selected.value = uncheckedStr;
}
// 页面onload的时候计算当前页被选中项,并在页面表示
function initPage() {
var all_selected = document.form1.all_selected.value;
if(all_selected != "" && all_selected!= null) {
var arrall_select = all_selected.split(",");
if(arrall_select.length > 0) {
for(var k = 0; k < arrall_select.length; k++) {
for(var i = 0; i < document.form1.checkbox.length; i++) {
if(document.form1.checkbox[i].value == arrall_select[k]) {
document.form1.checkbox[i].checked = true;
}
}
}
}
}
}
每次翻页的时候调用getCheckBoxInformation()方法,页面加载的时候调用initPage()方法.
在后台,每次翻页时调用方法
public String doubleSpread(String all_select, String now_selected, String no_selected) {
//获取当前选中的项目加入al
List al = new ArrayList();
if(all_select != "" && all_select != null)
{
String[] all_select_str = all_select.split(",");
for(int a=0;a<all_select_str.length;a++)
{
al.add(all_select_str[a]);
}
}
//将当前选中项目加入列表
if (now_selected != "" && now_selected != null) {
String[] all_now_select = now_selected.split(",");
for (int i = 1; i < all_now_select.length; i++) {
if (!al.contains(all_now_select[i])) {
al.add(all_now_select[i]);
}
}
}
//将当前未选中项目从列表中删除
if (no_selected != "" && no_selected != null) {
String[] all_now_no_select = no_selected.split(",");
for (int i = 1; i < all_now_no_select.length; i++) {
if (al.contains(all_now_no_select[i])) {
al.remove(all_now_no_select[i]);
}
}
}
all_select=al.toString().replaceAll(" +","");;
all_select=all_select.substring(1,all_select.length()-1)+",";
return all_select;
}
将此方法返回的all_select再传到JSP页面上并赋值给那个隐藏域,到此,功能就实现了。
以上所述是小编给大家介绍的Java中checkbox实现跨页多选的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# checkbox
# 跨页多选
# Java Swing组件复选框JCheckBox用法示例
# Java带复选框的树(Java CheckBox Tree)实现和应用
# 翻页
# 小编
# 多选
# 来了
# 看了
# 在此
# 并在
# 给大家
# 将此
# 不完全
# 到此
# 所述
# 给我留言
# 感谢大家
# 疑问请
# 有任何
# 实现了
# 加载
# 在网上
# 列表中
相关文章:
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
建站之星安装后界面空白如何解决?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
沈阳制作网站公司排名,沈阳装饰协会官方网站?
html制作网站的步骤有哪些,iapp如何添加网页?
建站之星收费标准详解:套餐费用及年费价格表一览
如何在万网开始建站?分步指南解析
如何快速搭建自助建站会员专属系统?
建站之星免费模板:自助建站系统与智能响应式一键生成
如何配置IIS站点权限与局域网访问?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
香港服务器网站卡顿?如何解决网络延迟与负载问题?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
高性价比服务器租赁——企业级配置与24小时运维服务
如何通过VPS搭建网站快速盈利?
长沙做网站要多少钱,长沙国安网络怎么样?
网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?
内部网站制作流程,如何建立公司内部网站?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
如何在云虚拟主机上快速搭建个人网站?
如何在Windows虚拟主机上快速搭建网站?
如何在云服务器上快速搭建个人网站?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
如何获取上海专业网站定制建站电话?
网站制作模板下载什么软件,ppt模板免费下载网站?
香港服务器如何优化才能显著提升网站加载速度?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
如何快速使用云服务器搭建个人网站?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
如何选择可靠的免备案建站服务器?
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
建站之星安装后如何自定义网站颜色与字体?
如何快速启动建站代理加盟业务?
如何在VPS电脑上快速搭建网站?
Android自定义listview布局实现上拉加载下拉刷新功能
教育培训网站制作流程,请问edu教育网站的域名怎么申请?
如何通过多用户协作模板快速搭建高效企业网站?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
黑客如何利用漏洞与弱口令入侵网站服务器?
如何快速上传自定义模板至建站之星?
全景视频制作网站有哪些,全景图怎么做成网页?
建站之星安装模板失败:服务器环境不兼容?
导航网站建站方案与优化指南:一站式高效搭建技巧解析
已有域名建站全流程解析:网站搭建步骤与建站工具选择
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
如何安全更换建站之星模板并保留数据?
*请认真填写需求信息,我们会在24小时内与您取得联系。