javascript操作select元素实例分析


Posted in Javascript onMarch 27, 2015

本文实例讲述了javascript操作select元素的用法。分享给大家供大家参考。具体分析如下:

这里熟悉一下js对select元素的操作,html页面中建立一个form,其中包含一个select元素和submit按钮。

当选择select中某一项时改变其文字,当select中所有项的文字都改变后,重新恢复它们。

当按下submit时关闭窗口本身,代码如下:

<!DOCTYPE html>
<html>
<head>
<title>duang for select elements</title>
<script type="text/javascript">
 function do_change(elt){
  var text = elt[elt.selectedIndex].innerHTML;
  if(!text.match(/\[/))
   elt[elt.selectedIndex].innerHTML += " [duang]";
  var is_all_seleted = true;
  for(var i=0;i<elt.length;++i){
   if(!elt[i].innerHTML.match(/\[/)){
    is_all_seleted = false;
    break;
   }
  }
  if(is_all_seleted){
   alert("all duang!!!\nand reset it!!!");
   for(var i=0;i<elt.length;++i){
    elt[i].innerHTML = elt[i].innerHTML.replace(/\s\[.*\]/,"")
   }
  }
 }
</script>
</head>
<body>
 <form id="frm_main" action="#" method="post">
  <select id="slt" onchange="do_change(this);">
   <option value="opt_1">opt A</option>
   <option value="opt_2">opt B</option>
   <option value="opt_3">opt C</option>
   <option value="opt_4">opt D</option>
   <option value="opt_5">opt E</option>
  </select>
  <input type="submit" value="close window" onclick="window.close();"/>
 </form>
</body>
</html>

在firefox中一开始貌似无法关闭窗口本身,后来发现在about:config中设置dom.allow_scripts_to_close_windows为true即可。

如果每个select中的选项变化没有规律,则可以写一个on_change_ex来处理,代码如下:

function do_change_ex(me){
  var text = me[me.selectedIndex].innerHTML;
  if(!text.match(/\[/)){
   me[me.selectedIndex].text_bak = me[me.selectedIndex].innerHTML;
   me[me.selectedIndex].innerHTML += " [duang]";
   me[me.selectedIndex].is_changed = true;
  }
  var is_all_seleted = true;
  for(var i=0;i<me.length;++i){
   if(!me[i].is_changed){
    is_all_seleted = false;
    break;
   }
  }
  if(is_all_seleted){
   alert("all duang!!!\nand reset it!!!");
   for(var i=0;i<me.length;++i){
    me[i].innerHTML = me[i].text_bak;
    me[i].is_changed = false;
   }
  }
}

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

Javascript 相关文章推荐
jquery提升性能最佳实践小结
Dec 06 Javascript
Lazy Load 延迟加载图片的jQuery插件中文使用文档
Oct 18 Javascript
自己编写的类似JS的trim方法
Oct 09 Javascript
为什么Node.js会这么火呢?Node.js流行的原因
Dec 01 Javascript
JavaScript通过select动态更换图片的方法
Mar 23 Javascript
如何消除inline-block属性带来的标签间间隙
Mar 31 Javascript
浅谈angular4.0中路由传递参数、获取参数最nice的写法
Mar 12 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
Apr 22 Javascript
vue实现自定义多选与单选的答题功能
Jul 05 Javascript
vue实现微信获取用户信息的方法
Mar 21 Javascript
小程序封装路由文件和路由方法(5种全解析)
May 26 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
Sep 05 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
Mar 27 #Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
Mar 27 #Javascript
jquery使用animate方法实现控制元素移动
Mar 27 #Javascript
jQuery获取标签文本内容和html内容的方法
Mar 27 #Javascript
Node.js 去掉种子(torrent)文件里的邪恶信息
Mar 27 #Javascript
jQuery使用attr()方法同时设置多个属性值用法实例
Mar 26 #Javascript
jQuery使用prepend()方法在元素前添加内容用法实例
Mar 26 #Javascript
You might like
php牛逼的面试题分享
2013/01/18 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
2015/04/20 PHP
yii2带搜索功能的下拉框实例详解
2016/05/12 PHP
PHP进阶学习之类的自动加载机制原理分析
2019/06/18 PHP
jquery的index方法实现tab效果
2011/02/16 Javascript
一个简单的js树形菜单
2011/12/09 Javascript
js获取单选框或复选框值及操作
2012/12/18 Javascript
Javascript学习笔记之相等符号与严格相等符号
2014/11/23 Javascript
javascript实现table表格隔行变色的方法
2015/05/13 Javascript
JavaScript的jQuery库插件的简要开发指南
2015/08/12 Javascript
快速获取/设置iframe内对象元素的几种js实现方法
2016/05/20 Javascript
JS对象是否拥有某属性如何判断
2017/02/03 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
2017/07/06 Javascript
使用vue制作FullPage页面滚动效果
2017/08/21 Javascript
基于Vue制作组织架构树组件
2017/12/06 Javascript
java实现单链表增删改查的实例代码详解
2019/08/30 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
Vue调用后端java接口的实例代码
2019/10/28 Javascript
vue倒计时刷新页面不会从头开始的解决方法
2020/03/03 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
vue打开其他项目页面并传入数据详解
2020/11/25 Vue.js
[40:31]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python str与repr的区别
2013/03/23 Python
python中threading超线程用法实例分析
2015/05/16 Python
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
Python用list或dict字段模式读取文件的方法
2017/01/10 Python
python executemany的使用及注意事项
2017/03/13 Python
我们没有写servlet的构造方法,那么容器是怎么创建servlet的实例呢
2013/04/24 面试题
新闻专业个人求职信
2013/12/19 职场文书
加拿大探亲邀请信
2014/01/28 职场文书
一位农村小子的自荐信
2014/04/07 职场文书
书香校园建设方案
2014/05/02 职场文书
安全生产承诺书范文
2014/05/22 职场文书
工作证明英文模板
2014/10/21 职场文书
大学生违纪检讨书300字
2014/10/25 职场文书
2015年敬老月活动总结
2015/03/27 职场文书