问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

js 复选框效果

发布网友 发布时间:2022-04-22 14:05

我来回答

2个回答

懂视网 时间:2022-04-22 18:26

本章给大家带来用js实现下拉复选框效果(代码实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

先看看效果:

1.gif

下面我们看看代码:

HTML代码:

<div>
 <select name="" id="lang1"></select>
 <ul id="ck1">
  <li>
  <label><input type="checkbox">HTML</label>
  </li>
  <li>
  <label><input type="checkbox">CSS</label>
  </li>
  <li>
  <label><input type="checkbox">JavaScript</label>
  </li>
  <li>
  <label><input type="checkbox">jQuery</label>
  </li>
  <li>
  <label><input type="checkbox">PHP</label>
  </li>
  <li>
  <label><input type="checkbox">MySQL</label>
  </li>
 </ul>
 </div>
 <hr><!--HTML结构不能变-->
 <div>
 <select name="" id="lang2"></select>
 <ul id="ck2">
  <li>
  <label><input type="checkbox">Java</label>
  </li>
  <li>
  <label><input type="checkbox">C#</label>
  </li>
  <li>
  <label><input type="checkbox">C++</label>
  </li>
  <li>
  <label><input type="checkbox">Pyhton</label>
  </li>
 </ul>
 </div>
 <input type="button" onclick="console.log({'tag1':tag1,'tag2':tag2,})" value="查看字段">

css代码:

div {
 display: inline-block;
}

select {
 min-width: 200px;
 height: 25px;
 border: 1px solid #000;
}

ul {
 display: none;
 list-style: none;
 margin: 0;
 padding: 0;
 border: 1px solid #000;
}

label {
 display: block;
 padding: 2px 10px;
 white-space: nowrap;
}

ul li:hover {
 background-color: #aabbcc;
}

JavaScript代码:

/**
 * [dropDownCk 下拉复选框]
 * @param {[String]} boxId [父级元素id]
 * @param {[String]} selectId [下拉选id]
 * @param {[String]} hiddenId [隐藏区域id]
 * @return {[Array]}  [description]
 */
 function dropDownCk(selectId,hiddenId) {

 var boxId = "#" + boxId,
  selectId = "#" + selectId,
  hiddenId = "#" + hiddenId;
 
 $(hiddenId).mouseleave(function(){ // 鼠标离开隐藏复选区域
  
  $(this).hide();
 
 });
 
 $(selectId).click(function() { // 切换显示与隐藏

  $(hiddenId).toggle();

 });

 var tagArr = []; // 接收复选字段数组

 $(selectId).html("<option checked='true' style='display:none;'>" + "请选择项目" + "</option>");

 $(hiddenId + ' label').find('input').click(function() { // 点击向数组添加元素

  if ($(this).is(':checked')) {

  tagArr.push($(this).parent().text());

  $(selectId).html("<option checked='true' style='display:none;'>" + tagArr.join(",") + "</option>");

  } else {

  tagArr.splice(tagArr.indexOf($(this).parent().text()), 1); // 删除对应元素

  if (tagArr.length == 0) {

   $(selectId).html("<option checked='true' style='display:none;'>" + "请选择项目" + "</option>");

  } else {

   $(selectId).html("<option checked='true' style='display:none;'>" + tagArr.join(",") + "</option>");

  }

  }

 });

 return tagArr;
 }

 var tag1 = dropDownCk("lang1","ck1");
 var tag2 = dropDownCk("lang2","ck2")

注意:当遇到选项比较多时,可以定义一个数组插入到HTML中,实现下拉的选项,可以参考三级联动的写法:玩转javascript之三级联动实例。

热心网友 时间:2022-04-22 15:34

首先左边是CheckBox 右边是隐藏域或者是testbox中显示内容
每个CheckBox 都有个CheckedChanged事件,当触发该事件事时右边对应的隐藏域或者是testbox 中Visible属性显示
这样就可以了
还可以用jquery来做,如果想用可以hi我追问谢谢沙发!

追答客气,受用就好…

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
64岁的老头感冒了,还喝一瓶啤酒,又喝3包感冒药,吃了3个阿莫西林消炎药... ...今天中午12点喝了一瓶啤酒,不会有反应死了吧? 喝一瓶啤酒吃药没事吧 养育孩子有哪些正确的方式? 联想电脑一开机就蓝屏怎么解决 光遇冥想任务怎么完成_冥想任务攻略 光遇 光遇云野的锦鲤池冥想怎么做? 光遇 光遇在滑冰场旁冥想的任务怎么做? 光遇在仙乡的金塔下冥想任务怎么做 任务达成方法介绍 光遇 光遇在禁阁的神坛旁冥想怎么做? 阿迪达斯鞋子鞋身是透明的荧光绿,夏季休闲鞋好像是涉水鞋,请问一下大家知道这种鞋子型号 耐克 荧光绿的鞋子 鞋带也是荧光绿的 谁知道叫什么啊 在那有卖啊 怎么鉴定adidas三叶草SuperstarII男鞋 荧光绿鹿皮复古板鞋G43721 耐克荧光绿(有点像*)加黑色的那款板鞋什么型号,那款鞋子一共三个颜色 隐匿之泪的史莱姆怎么打 广州哪里能买到NIKE荧光绿滑板鞋? 在我们玩滑板时,什么颜色的鞋最能吸引女孩子的眼光? 谁知道这双Nike荧光绿板鞋叫什么? JS如何实现图中点击复选框后的效果? 网页设计中网页到底该多宽? 椰奶西米露怎么做 牛奶椰汁西米露滴做法 钢铁第七章摘抄好句赏析有哪些? 钢铁是怎样炼成的读书笔记 好词好句 左侧上腹部摸到一硬块,移动的。做彩超和CT均显示无异常。CT上看胃的 右上腹皮下有一卵形大小突起硬块 右上腹部有硬块 比较大很硬 不痛不痒好几个月了 腹部有硬块不痛不痒能摸到有好几个 肚皮上长了个硬块 胸骨下面上腹部有硬块,摸上去光滑,呈圆状,好像在里面肝位置那里。没症状,三年了。人无异常,工作照常 苹果手表分期付款是先拿表吗 人人租机苹果手表哪个租赁方案好 15年A4是不是3代发动机? 大连百年城苹果店可以用信用卡购买苹果手表吗 15年奥迪A4怎么显示车速 在苹果官网分期付款定一个苹果表好不好? 15年的奥迪A4遥控开锁解锁的喇叭声音低 15年的奥迪A4带启停吗 苹果手表iwatch郫县那里可以分期 15年奥迪a4l.烧机油厉害,免拆洗清理好不好? 客户买了新版平安福,也办好了信用卡,要首付苹果手表下一步怎么操作 15年奥迪A4l三代发动机。这样算烧机油吗? 金蝉贷能贷款买苹果Apple Watch series 2手表吗? 15年奥迪a4换方向机怎么匹配 15年A4l为什么17年才上牌? 奥迪A4L2015款烧机油吗? 现在端午节吃粽子的人为什么越来越少,去餐厅吃饭的人却越来越多了? 端午节西餐厅应该做些什么活动会更加吸引客人前来就餐? 音乐餐厅,端午节怎么搞活动呢? 军棋里军衔怎么和职位都不一样?军旗里军衔分多少级?