1.复选框与按钮的配合使用的DOM操作

<body>
        
        <input type="checkbox" id="ckb1" /><br><br>
        <input type="button" value="下一步" id="btn1" disabled="disabled" />

</body>
        
        <script>
            
            document.getElementById('ckb1').onclick = function(){
            var ckb1 = document.getElementById('ckb1');
            var btn1 = document.getElementById('btn1');
            
            if(ckb1.checked){
                btn1.removeAttribute('disabled');
            }
            else{
                btn1.setAttribute('disabled','');
        }
    }
        </script>

2.下拉列表、文本框与按钮配合使用的DOM操作(两种方法)

<body>

<select id="skd" size="7" style="width: 100px;"></select><br>
        <select id="slt" size="7" style="width: 100px;"></select><br>
        <input type="text" id="ipt2" /><br>
        <input type="text" id="txt" /><br>
        <input type="button" id="btn2"  value="添加"/>
 </body>       
        <script>
            //第一种方法(拼字符串)
            
//            document.getElementById('btn2').onclick = function(){
//                var ipt2= document.getElementById('txt').value;
//                var skd = document.getElementById('skd');
//                skd.innerHTML += "<option>"+ ipt2  +"</option>";
//                document.getElementById('ipt2').value="";
//            }
            
            //第二种方法(造元素)
            
            var txt = document.getElementById('txt');
            var slt = document.getElementById('slt');
            
            document.getElementById('btn2').onclick = function(){    
//            新建一个option对象
            var opt = document.createElement('option');
//            设置option对象的值(指向赋值)
            opt.value = txt.value;
//            设置option对象的内容
            opt.innerHTML = txt.value;
//            添加到slt(名)的对象
            slt.appendChild(opt);
        }

</script>

3.下拉列表与按钮的双向交换效果

<body>
        
        <select id="oldSelect" size="10" multiple="multiple" style="width: 100px;float: left;position: relative">
            <option >北京</option>
            <option >上海</option>
            <option >上海</option>
            <option >深圳</option>
            <option >香港</option>
        </select>
        <select id="newSelect" size="10" multiple="multiple" style="width: 100px;float: left;margin-left: 20px;position: relative;">
            <option >篮球</option>
            <option >游泳</option>
            <option >击剑</option>
            <option >排球</option>
            <option >举重</option>
        </select>
        
        <br><br><br><br><br><br><br><br><br><br>
        
        <input type="button" id="btn1" value="添加到右" style="float: left;"/>
        <input type="button" id="btn2" value="添加到左" style="float: left;margin-left: 50px;"/>
        
        <script>
            
            document.getElementById('btn1').onclick=function(){
                
                var oldSelect = document.getElementById('oldSelect');
                
                    for(var i=0;i<oldSelect.options.length;i++){
                        if(oldSelect.options[i].selected){
                        var newSelect = document.getElementById('newSelect');
                        newSelect.appendChild(oldSelect.options[i]);
                    }
                }
                    alert(oldSelect.options[oldSelect.options.length].value);
            }
            
                document.getElementById('btn2').onclick=function(){
                
                var newSelect = document.getElementById('newSelect');
                
                    for(var i=0;i<newSelect.options.length;i++){
                        if(newSelect.options[i].selected){
                        var oldSelect = document.getElementById('oldSelect');
                        oldSelect.appendChild(newSelect.options[i]);
                    }
                }
                    alert(newSelect.options[newSelect.options.length].value);
            }

</script>

关于JS的DOM操作——重要实例的操作的更多相关文章

  1. js的dom测试及实例代码

    js的dom测试及实例代码 一.总结 一句话总结: 1.需要记得 创建 标签和创建文本节点都是document的活:document.createTextNode("Rockets的姚明&q ...

  2. js的dom对象(带实例超详细全解)

    js的dom对象(带实例超详细全解) 一.总结 一句话总结: 1.DOM中的方法区分大小写么? 解答:区分 2.DOM中元素和节点的关系式什么? 解答:元素就是标签,节点中有元素节点,也是标签,节点中 ...

  3. js的dom操作(整理)(转)

    js的dom操作整理(整理)(转) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来来更加方便的进行dom操作 1.dom是什么? 对于JavaS ...

  4. js的DOM操作整理(整理)

    js的DOM操作整理(整理) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来更加方便的进行dom操作 1.dom是什么? 对于JavaScrip ...

  5. Selenium2学习-014-WebUI自动化实战实例-012-Selenium 操作下拉列表实例-div+{js|jquery}

    之前已经讲过了 Selenium 操作 Select 实现的下拉列表:Selenium2学习-010-WebUI自动化实战实例-008-Selenium 操作下拉列表实例-Select,但是在实际的日 ...

  6. Ext JS学习第十二天 Ext基础之操作dom ; get与fly 方法

    此文用来记录学习笔记 •嗯!首先,什么是DOM(Document Object Model) –W3C对DOM的定义:文档对象模型是一个平台,一个中立于语言的应用程序编程接口(API),允许程序访问并 ...

  7. JS的DOM操作及动画

    JS的DOM操作DOM:Document Object ModelBOM:Bowers(浏览器) Object Model找到元素:var a=document.getElementById(&quo ...

  8. JS的DOM操作 - 你真的了解吗?

    摘要 想稍微系统的说说对于DOM的操作,把Javascript和jQuery常用操作DOM的内容归纳成思维导图方便阅读,同时加入性能上的一些问题. 前言 在前端开发的过程中,javascript极为重 ...

  9. JS的DOM操作语法

    整理了一下JS的DOM操作语法,这里做下记录. <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

随机推荐

  1. Tagged Pointer

    前言 在2013年9月,苹果推出了iPhone5s,与此同时,iPhone5s配备了首个采用64位架构的A7双核处理器,为了节省内存和提高执行效率,苹果提出了Tagged Pointer的概念.对于6 ...

  2. XML读取两种方法

    //第一种SAX方法解析 package a20170722.xmlex; import java.io.File; import java.util.ArrayList; import java.u ...

  3. 浅入深出之Java集合框架(中)

    Java中的集合框架(中) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,如果已经有java基础的小伙伴可以直接跳到<浅入深出之Java集合框架 ...

  4. 64位Win10系统安装Mysql5.7.11

    最近在装了64位Win10系统的mac book笔记本上用mysql-installer-community-5.7.11.0安装Mysql5.7.11,在配置mysql server时老是卡住,报错 ...

  5. ReactiveSwift源码解析(七) Signal的CombineLatest的代码实现

    本篇博客我们就来聊一下combineLatest()的使用以及具体的实现方式.在之前的<iOS开发之ReactiveCocoa下的MVVM>的博客中我们已经聊过combineLatest( ...

  6. gulp静态资源构建、压缩、版本号添加

    公司移动端商城使用前后分离方案,前台nginx静态文件,js使用requirejs模式,使用gulp压缩添加版本号时发现问题, 问题1.在公共的js配置中,引用的路径是写死的,缓存会一直存在. 解决方 ...

  7. mysql5.7 date类型无法设置'0000-00-00'默认值

    现象: mysql5.7之后版本datetime默认值设置'0000-00-00',出现异常:Invalid default value for 'create_time' 原因: mysql5.7之 ...

  8. Python基础之常用模块(二)

    一.sys模块 1.sys.exit() 退出程序,这是正常退出程序,与之前用的break不同的是,break只是退出循环,循环之后的代码还会正常运行 2.sys.argv  会返回一个列表,列表中的 ...

  9. 将csv格式的文件数据导入mysql中

    示例如下: load data infile 'test.csv'into table `test`fields terminated by ',' optionally enclosed by '& ...

  10. 【流量】netflow 基础知识

    摘要 记录下关于netflow的基础知识以及应用,现状 是什么 一种数据交换方式,NetFlow流量统计数据包括数据流时戳 源IP地址和目的IP地址 源端口号和目的端口号 输入接口号和输出接口号 下一 ...