关于JS的DOM操作——重要实例的操作
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操作——重要实例的操作的更多相关文章
- js的dom测试及实例代码
js的dom测试及实例代码 一.总结 一句话总结: 1.需要记得 创建 标签和创建文本节点都是document的活:document.createTextNode("Rockets的姚明&q ...
- js的dom对象(带实例超详细全解)
js的dom对象(带实例超详细全解) 一.总结 一句话总结: 1.DOM中的方法区分大小写么? 解答:区分 2.DOM中元素和节点的关系式什么? 解答:元素就是标签,节点中有元素节点,也是标签,节点中 ...
- js的dom操作(整理)(转)
js的dom操作整理(整理)(转) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来来更加方便的进行dom操作 1.dom是什么? 对于JavaS ...
- js的DOM操作整理(整理)
js的DOM操作整理(整理) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来更加方便的进行dom操作 1.dom是什么? 对于JavaScrip ...
- Selenium2学习-014-WebUI自动化实战实例-012-Selenium 操作下拉列表实例-div+{js|jquery}
之前已经讲过了 Selenium 操作 Select 实现的下拉列表:Selenium2学习-010-WebUI自动化实战实例-008-Selenium 操作下拉列表实例-Select,但是在实际的日 ...
- Ext JS学习第十二天 Ext基础之操作dom ; get与fly 方法
此文用来记录学习笔记 •嗯!首先,什么是DOM(Document Object Model) –W3C对DOM的定义:文档对象模型是一个平台,一个中立于语言的应用程序编程接口(API),允许程序访问并 ...
- JS的DOM操作及动画
JS的DOM操作DOM:Document Object ModelBOM:Bowers(浏览器) Object Model找到元素:var a=document.getElementById(&quo ...
- JS的DOM操作 - 你真的了解吗?
摘要 想稍微系统的说说对于DOM的操作,把Javascript和jQuery常用操作DOM的内容归纳成思维导图方便阅读,同时加入性能上的一些问题. 前言 在前端开发的过程中,javascript极为重 ...
- JS的DOM操作语法
整理了一下JS的DOM操作语法,这里做下记录. <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...
随机推荐
- Linux的同步访问技术
1.中断屏蔽: 单CPU范围内避免竞态的一种简单方法:在进入临界区之前屏蔽系统的中断.中断屏蔽将使得中断与进程之间的并发不再发生,而且Linux内核的进程调度等操作都依赖中断来实现,内核抢占式进程之间 ...
- [图形学] Chp8.7.2 梁友栋-Barsky线段裁剪算法
这节简单介绍了梁友栋-Barsky裁剪算法的原理,只有结论并没有过程,看过http://blog.csdn.net/daisy__ben/article/details/51941608这篇文章后,大 ...
- Postgresql快速写入/读取大量数据(.net)
环境及测试 使用.net驱动npgsql连接post数据库.配置:win10 x64, i5-4590, 16G DDR3, SSD 850EVO. postgresql 9.6.3,数据库与数据都安 ...
- java constructor 在构造子类时,一定会调用到父类的构造方法 “ 私有属性被继承了?”问题
” Error:Implicit super constructor Pet() is undefined. Must explicitly invoke another constructor “ ...
- angularjs初窥门径
貌似angularjs出来之后网上各种夸angularjs的好黑jquery. angularjs大致可以分为几个板块:作用域,控制器,指令(主要),路由,依赖注入. 1 作用域 作用域在angula ...
- SSM整合学习笔记
对学习Spring+Spring MVC+Mybatis过程中出现的问题解决办法汇总 出现的问题 1.pom.xml报错 右键项目->maven->update project 因此每次更 ...
- ionic2+Angular 使用ng2-file-upload 插件上传图片并实现本地预览
第一步:npm install ng2-file-upload --save 安装 ng2-file-upload 第二步:在需要使用该插件的页面的对应module文件的imports中引入Commo ...
- WPF转换器之通用转换器
WPF中的转换器是一个非常好的数据类型转换解决方案,实用和强大, 它的作用是将源数据转换为WPF自身需要的类型,对数据实体没有侵略性,会在项目工程中频繁使用.所以掌握转换器是WPF开发的必备技能. 我 ...
- swift3.0 基础练习-实现99乘法表
用的方法比较笨 大致效果是这样 思路: 第一行 拼接一次 第二行 拼接二次 ... 第九行 拼接九次 //num控制个数 var num = 1 //result为结果 var result = &q ...
- 【Mysql】Mysql关键字
ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT BINARY BLOB BOTH BY CALL CASCADE C ...