根据checkBox或radio的勾选状态得到id数组
$(function(){
var inputs = document.getElementsByTagName("input");
var realStrs = "";
var strs = "";
for (var i = 0; i < inputs.length; i++) {
var obj = inputs[i];
if (obj.type == "radio") {
if (obj.checked == true) {
realStrs += obj.id + ",";
}
}else if(obj.type == "checkbox"){
if(obj.checked == true){
strs += obj.id + ",";
}
}
}
realStrs = realStrs.substr(0,realStrs.length-1);
strs = strs.substr(0,strs.length-1);
var singleArray = realStrs.split(",");
var array = strs.split(",");
var result = [], isRepeated;
for (var i = 0, len = singleArray.length; i < len; i++) {
isRepeated = false;
for (var j = i+1, len = singleArray.length; j < len; j++) {
if (singleArray[i] == singleArray[j]) {
isRepeated = true;
break;
}
}
if (!isRepeated) {
result.push(singleArray[i]);
}
}
var result2 = [], isRepeated2;
for (var i = 0, len = array.length; i < len; i++) {
isRepeated2 = false;
for (var j = i+1, len = array.length; j < len; j++) {
if (array[i] == array[j]) {
isRepeated2 = true;
break;
}
}
if (!isRepeated) {
result2.push(array[i]);
}
}
for (var k = 0; k < result.length; k++) {
var realIds = result[k] - 99;
if(realIds>0){
document.getElementById(realIds).style.display = "none";
}
}
for (var j = 0; j < result2.length; j++) {
var ids = result2[j] - 100;
if(ids>0){
document.getElementById(ids).style.display = "none";
}
}
});
这段代码是在查看问卷调查结果的时候用到的,一份问卷里面有单选题、多选题和问答题,(我这里不考虑最简单的问答题),
我的方法是:所有选项前面都有一个input,单选就是radio,多选就是checkbox,将查询到的结果进行判断,已选的选项前再加上
一个input,属性checked=“checked”,并将刚刚的input隐藏。
for (var k = 0; k < result.length; k++) {
var realIds = result[k] - 99;
if(realIds>0){
document.getElementById(realIds).style.display = "none";
}
}
for (var j = 0; j < result2.length; j++) {
var ids = result2[j] - 100;
if(ids>0){
document.getElementById(ids).style.display = "none";
}
}
其中result[k]-99,表示的是选中的选项是有两个input的,只是将其中一个没选中的隐藏了。
————————————————————————————————————————————————————————————————————————————————————————————
大家要看的只是我得到checked的属性的id就可以了,其他的可作为参考。
根据checkBox或radio的勾选状态得到id数组的更多相关文章
- Extjs改变树节点的勾选状态
Extjs改变树节点的勾选状态 今天系统中有处地方需要一个功能点击一个按钮后将树节点前的复选框去掉,变成没有选择的状态.网上搜索了半天,然后自己查查API,终于找到解决办法了,下面把方法贴出来. 在E ...
- Ztree _ 横向显示子节点、点击文字勾选、去除指定元素input的勾选状态
前些天项目需要树结构表现数据,需求ztree就能满足所以直接使用ztree只是踩了些小坑... 1.ztree子节点横向显示(下图): 效果说明:第三级子节点按需求横向显示其他竖向显示,每行最多显示5 ...
- dedecms添加/编辑文章如何把附加选项去掉默认勾选状态
1.去掉添加时默认勾选状态. 在 系统->系统基本参数->其它选项 中,如图中的三个选项选择否即可. 设置完后可以看到添加时已经默认不勾选,但是编辑文章时还是默认勾选状态. 2.去掉编辑时 ...
- JqGrid获得所有选中行数据ID数组,获取所有行的ID数组
获得选中行的ID数组:var ids = $("jqgridtableid").jqGrid('getGridParam','selarrrow'); 获得所有行的ID数组:var ...
- Ext grid checkbox 分页 翻页 勾选 问题
timeArray = new Array(); //临时数组变量 var timeStatusBar = new Ext.ux.StatusBar({ id: 'statusbar', defaul ...
- elementUi-复选框,使用v-for循环出来的复选框,默认多个值为勾选状态
1. 使用 v-model="BottomSelectFor[index].tick" 绑定要默认勾选的状态 2.在数组中定义 tick:true,没有的字段默认为false 3. ...
- 如何根据checkbox的值进行勾选!例:我要勾选value等于scanbuy,terminal的复选框!
微商城 随手购 自助购 <div class="controls" id="client"> <input id="mall&quo ...
- checkbox属性checked="checked"但状态不是勾选状态的解决办法
原因: jQuery API明确说明,1.6+的jQuery要用prop,不能用attr否则无效,尤其是checkBox的checked的属性的判断.
- Datagridview 中的checkbox 选中或勾选状态失效
1.问题描述,先选中第一行,再取消选择,然后点击部门全选,第一行没有打钩,状态是不选中的状态. 2.分析代码 先选中第一行,单元格的单击事件中 改变选中状态为1,第一行取消选择,单元格的单击事件中 改 ...
随机推荐
- IC卡存储器介绍
自从80年代中期出现IC电话卡后,基本已取代了原来流行的电话磁卡,磁卡存在存在严重的安全问题,已逐步淘汰.即使IC电话卡,也不能算很安全,卡内所有数据只要有简单的读写装置并按时序操作都能读取,事实上电 ...
- spring mvc 提交表单的例子
1. 构建MAVEN项目,然后转换成web格式,结构图如下: 2. 通过@RequestMapping来进行配置,当输入URL时,会以此找到对应方法执行,首先调用setupForm方法,该方法主要是生 ...
- 解析微信node开发;拿token
获取token,本着两个原则, 1.先查询是否有token,有的话判断其时间是否与上一次请求时间差是否超过7100: a.不超过,直接用得到: b.超过,再获取刷新: 2.没有token获取刷新tok ...
- 2013 多校联合 F Magic Ball Game (hdu 4605)
http://acm.hdu.edu.cn/showproblem.php?pid=4605 Magic Ball Game Time Limit: 10000/5000 MS (Java/Other ...
- libcurl使用示例
远程下载文件,并将http 头信息存放内存中以及文件大小等相关信息: #include <stdio.h> #include <curl/curl.h> #include &l ...
- Android sdk + PhoneGap 配置
最近在学习这方面. 安卓sdk(下载地址百度谷歌即可) . 最新版的安卓sdk 自带ADT(基于eclipse) 开发工具 所以 我们不需要另外下载 eclipse 即可开始开发. 安卓个版本ap ...
- web开发 - 从零开始 - 02 - 常用标签
1.a : href 属性为id,即为锚点:文件路径,则为下载链接: 新窗口打开文件,target = "_blank";当前窗口打开,target="_self&qu ...
- Linux用户及用户组管理
Linux是个优秀的多用户多任务操作系统. 掌握Linux的用户/用户组管理是基本及必备技能之一. 简单做下总结. 无论采用图形界面的用户管理设置,还是终端的管理方式,最终目的都是对系统的用户/用户组 ...
- SQL Server 使用ROW_NUMBER()进行分页
代码示例: WITH domain AS(SELECT ROW_NUMBER() OVER(ORDER BY ID DESC) ids,* FROM dbo.DomainInfo) SELECT * ...
- excel导出、导入功能
public class ExcelHelper { #region 数据导出至Excel文件 /// </summary> /// web导出Excel文件,自动返回可下载的文件流 // ...