javascript实现组合列表框中元素移动效果
- 应用背景:在页面中有两个列表框,需要把其中一个列表框的元素移动到另一个列表框 。
(1)编写init方法对两个列表框进行初始化;
(2)为body添加onload事件调用init方法;
(3)编写move(s1,s2)把s1中选中的选项移到s2;
(4)编写moveAll(s1,s2)把s1中所有的选项都移到s2.
(5)为按钮添加onclick事件。
javascript代码如下:
- <script type="text/javascript" language="javascript">
- //对下拉框信息进行初始化
- function init() {
- for (i = 0; i < 10; i++) {
- var y = document.createElement("option");//增加一个元素option
- y.text = '选项' + i;
- var x=document.getElementById("s1");//根据ID找到列表框
- x.add(y, null); //
- }
- }
- //把选中的选项移到另一边
- function move(s1, s2) {
- var index = s1.selectedIndex;
- if (index == -1) {
- alert("没有选中值");
- return;
- }
- s2.length++;
- s2.options[s2.length - 1].value = s1.options[index].value;
- s2.options[s2.length - 1].text = s1.options[index].text;//s1中当前选中的值赋给s2的最后一个元素
- s1.remove(index);//从s1中移除当前元素
- }
- //把一边的完全移到另一边
- function moveAll(s1, s2) {
- if (s1.length == 0) {
- alert("没有可用选择");
- return;
- }
- s2.length = s2.length + s1.length;
- for (var i = 0; i < s1.length; i++) {
- s2.options[s2.length - s1.length + i].value = s1.options[i].value;
- s2.options[s2.length - s1.length + i].text = s1.options[i].text;
- }
- s1.length = 0;
- }
- </script>
<body>代码:
- <body onload="init()">
- <table>
- <tr>
- <td><select id="s1" size=10 style="width:100"></select></td>
- <td><input type="button" name="moveToRight" value=">"
- onClick="move(s1,s2)"> <br>
- <br> <input type="button" name="moveAllToRight" value=">>"
- onClick="moveAll(s1,s2)"> <br> <input type="button"
- name="moveToLeft" value="<" onClick="move(s2,s1)"> <br>
- <br> <input type="button" name="moveAllToLeft" value="<<"
- onClick="moveAll(s2,s1)"></td>
- <td><select id="s2" name="s2" size=10 style="width:100"></select></td>
- </tr>
- </table>
- </body>
javascript实现组合列表框中元素移动效果的更多相关文章
- javascript 获取iframe里页面中元素值的方法 关于contentWindow和contentDocumen
javascript 获取iframe里页面中元素值的方法 IE方法:document.frames['myFrame'].document.getElementById('test').value; ...
- ie中弹出框中元素的定位
用selenium在ie8浏览器中定位一个弹出框时,直接用ie developer tools可能不一定能定位到,有一个解决的办法是直接在url后面加上#noHide,刷新后,然后再用ie devel ...
- JavaScript实现在文本框中输入空格时自动填写某个值
<script language="javascript" type="text/javascript"> var txtText4 = " ...
- javascript动态改变当前页面中元素的状态行为
function Datea() { var timed = document.getElementById('timed'); var t = setInterval(function TDate( ...
- weui 弹框中的单选效果
<!--性别修改弹框--> <div class="weui_dialog_alert" id="doctorSexDialog" style ...
- (七)对话框,单选框(radiobox),复选框(checkbox),列表框(ListBox),组合框(CComboBox),水平滚动条(Horizontal scroll bar),微调(旋转)spincontrol,列表视图控件CListCtrl,静态控件static
1,模态对话框和非模态对话框 // 模态对话框 void CMainFrame::OnDialogExec() { // TODO: 在此添加命令处理程序代码 // 创建对话框对象 CDialog d ...
- MFC入门示例之组合框(CComboBox)、列表框(CListBox)
1 //添加按钮点击事件 2 void CMFCApplication4Dlg::OnBnClickedButton1() 3 { 4 CString strText; 5 //获取文本框的值 6 G ...
- MFC编程入门之二十四(常用控件:列表框控件ListBox)
前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...
- javascript文件夹选择框的两种解决方案
javascript文件夹选择框的两种解决方案 解决方案1:调用windows 的shell,但会有安全问题. * browseFolder.js * 该文件定义了BrowseFolder()函数,它 ...
随机推荐
- 用mpvue写个玩意儿玩玩
下周公司要搞黑客马拉松了,组里可能会做个小程序.然后看到了mpvue感觉还不错,于是就打算试试水.用vue写小程序听上去美滋滋.那么先开始吧! 全局安装 vue-cli $ npm install - ...
- es6的解构函数
话说,解构无处不在啊,鄙人自从用了vue写项目以来,总是遇到各路大神莫名其妙的写法,然并未出任何错,查之,然解构也,呜呼哀哉,进而习之. 解构(Destructuring):是将一个数据结构分解为更小 ...
- OpenGL 实践之贝塞尔曲线绘制
说到贝塞尔曲线,大家肯定都不陌生,网上有很多关于介绍和理解贝塞尔曲线的优秀文章和动态图. 以下两个是比较经典的动图了. 二阶贝塞尔曲线: 三阶贝塞尔曲线: 由于在工作中经常要和贝塞尔曲线打交道,所以简 ...
- RIP实验
实验要求 1. 理解 RIP 协议的工作原理2. 理解 RIPv1.RIPv2 的特性3. 掌握 RIP 协议的基本配置方法4. 掌握 RIP 自动汇总和手动汇总的方法5. 掌握 RIP 配 ...
- 使用JavaScript策略模式校验表单
表单校验 Web项目中,登录,注册等等功能都需要表单提交,当把用户的数据提交给后台之前,前端一般要做一些力所能及的校验,比如是否填写,填写的长度,密码是否符合规范等等,前端校验可以避免提交不合规范的表 ...
- springboot项目中接口入参的简单校验
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...
- 五分钟学Java:如何学习Java面试必考的JVM虚拟机
原创声明 本文首发于微信公众号[程序员黄小斜] 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 为什么要学习JVM虚拟机 最近的你有没有参加Java面试呢?你有没有发现,Java ...
- Html的总结(待完善)
Html的总结(待完善) 框内文字 Placeholder 框内文字(例如:请输入密码) A标签 link 未点击的A标记 visited 点击过的A标签 hover 放置鼠标变颜色 active 点 ...
- ASP.NET MVC5实现芒果分销后台管理系统(二):Code First快速集成EntityFramework
在上一篇文章中,我们已经搭建了整个芒果后台管理系统整个工程架构,并集成了AutoMapper,日志组件等,接下来我们将使用Entity Framework完善系统的持久化存储部分.这篇EF的构造,我将 ...
- WEB应用之httpd基础入门(一)
前文我们聊了下http协议web服务的一些常识和httpd服务器软件三种响应模型的简单介绍,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12515075.ht ...