javascript基于DOM实现权限选择实例分析


Posted in Javascript onMay 14, 2015

本文实例讲述了javascript基于DOM实现权限选择的方法。分享给大家供大家参考。具体实现方法如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>权限选择</title>
<script type="text/javascript">
//====================多选操作====================================
function selMultiple(selectSrc, selectDes) {
  for (var i = selectSrc.childNodes.length - 1; i >= 0; i--) {
    var option = selectSrc.childNodes[i];
    if (option.selected == true) {
      selectSrc.removeChild(option);
      option.selected = false;
      selectDes.appendChild(option);
    }
  }
}
function selectToRight() {
  var selectSrc = document.getElementById("select1");
  var selectDes = document.getElementById("select2");
  selMultiple(selectSrc, selectDes);
}
function selectToLeft() {
  var selectSrc = document.getElementById("select2");
  var selectDes = document.getElementById("select1");
  selMultiple(selectSrc, selectDes);
}
//====================全选操作====================================
function selAll(selectSrc, selectDes) {
//      这种写法有问题,发现selectSrc.childNodes.length居然等于10,实际上只有5个元素
//      for (var i = 0; i < selectSrc.childNodes.length; i++) {
//        var option = selectSrc.childNodes[0];
//        selectSrc.removeChild(option);
//        selectDes.appendChild(option);
//      }
  var options = selectSrc.getElementsByTagName("option");
  var optLength = options.length;
  /*
  注意:for循环中不能直接使用options.length,因为selectDes.appendChild执行后
  会导致options.length减一,所以先把options.length存放到一个变量中备用
  */
  for (var i = 0; i < optLength; i++) {
    var option = options[0]; //这里使用的始终是第0个元素
    selectDes.appendChild(option);
  }
  selectSrc.options.length = 0;
}
function selectToRightAll() {
  var selectSrc = document.getElementById("select1");
  var selectDes = document.getElementById("select2");
  selAll(selectSrc, selectDes);      
}
function selectToLeftAll() {
  var selectSrc = document.getElementById("select2");
  var selectDes = document.getElementById("select1");
  selAll(selectSrc, selectDes);    
}
</script>
</head>
<body>
<select id="select1" multiple="multiple" style="float:left;width:100px;height:200px;">
<option>添加</option>
<option>删除</option>
<option>修改</option>
<option>保存</option>
<option>查询</option>
</select>
<div style="float:left;width:50px;">
<input type="button" style="float:left;width:100%;" value=">" onclick="selectToRight()" />
<input type="button" style="float:left;width:100%;" value="<" onclick="selectToLeft()" />
<input type="button" style="float:left;width:100%;" value=">>" onclick="selectToRightAll()" />
<input type="button" style="float:left;width:100%;" value="<<" onclick="selectToLeftAll()" />
</div>
<select id="select2" multiple="multiple" style="float:left;width:100px;height:200px"></select>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
jQuery 1.2.x 升? 1.3.x 注意事项
May 06 Javascript
js的逻辑运算符 ||
May 31 Javascript
使用js实现雪花飘落效果
Aug 26 Javascript
使用js显示当前时间示例
Mar 02 Javascript
如何用jquery控制表格奇偶行及活动行颜色
Apr 20 Javascript
js实现页面跳转重定向的几种方式
May 29 Javascript
javascript中的五种基本数据类型
Aug 26 Javascript
Bootstrap每天必学之导航
Nov 26 Javascript
JSON键值对序列化和反序列化解析
Jan 24 Javascript
jQuery插件zTree实现删除树子节点的方法示例
Mar 08 Javascript
彻底理解js面向对象之继承
Feb 04 Javascript
8 个有用的JS技巧(推荐)
Jul 03 Javascript
javascript中DOM复选框选择用法实例
May 14 #Javascript
JS对字符串编码的几种方式使用指南
May 14 #Javascript
jQuery的基本概念与高级编程
May 14 #Javascript
javascript实现简单的省市区三级联动
May 14 #Javascript
javascript实现仿腾讯游戏选择
May 14 #Javascript
JavaScript实现Flash炫光波动特效
May 14 #Javascript
javascript基于DOM实现省市级联下拉框的方法
May 14 #Javascript
You might like
PHP实现简单实用的分页类代码
2016/04/08 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
php基于dom实现读取图书xml格式数据的方法
2017/02/03 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
2019/12/13 PHP
asp.net HttpHandler实现图片防盗链
2009/11/09 Javascript
Google的跟踪代码 动态加载js代码方法应用
2012/11/12 Javascript
javascript中encodeURI和decodeURI方法使用介绍
2013/05/06 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
node.js中的path.basename方法使用说明
2014/12/09 Javascript
jQuery中DOM树操作之使用反向插入方法实例分析
2015/01/23 Javascript
jQuery实现文本框输入同步的方法
2015/06/20 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
2015/06/24 Javascript
详解基于Bootstrap扁平化的后台框架Ace
2015/11/27 Javascript
jQuery实现图片文字淡入淡出效果
2015/12/21 Javascript
jquery使用on绑定a标签无效 只能用live解决
2016/06/02 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
vue params、query传参使用详解
2017/09/12 Javascript
bootstrap响应式导航条模板使用详解(含下拉菜单,弹出框)
2017/11/17 Javascript
详解基于vue的服务端渲染框架NUXT
2018/06/20 Javascript
Vue中CSS动画原理的实现
2019/02/13 Javascript
jquery+php后台实现省市区联动功能示例
2019/05/23 jQuery
element-ui 远程搜索组件el-select在项目中组件化的实现代码
2019/12/04 Javascript
Vue实现菜单切换功能
2020/11/08 Javascript
详解JavaScript中的链式调用
2020/11/27 Javascript
python实现JAVA源代码从ANSI到UTF-8的批量转换方法
2015/08/10 Python
Python with语句和过程抽取思想
2019/12/23 Python
Python 使用 environs 库定义环境变量的方法
2020/02/25 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
什么是python的列表推导式
2020/05/26 Python
世界首屈一指的在线男士内衣权威:HisRoom
2017/08/05 全球购物
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
建筑安全生产目标责任书
2014/07/23 职场文书
小学语文复习计划
2015/01/19 职场文书
vue实现书本翻页动画效果实例详解
2022/04/08 Vue.js