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 相关文章推荐
Web开发者必备的12款超赞jQuery插件
Dec 03 Javascript
jQuery异步加载数据并添加事件示例
Aug 24 Javascript
如何在MVC应用程序中使用Jquery
Nov 17 Javascript
纯CSS3代码实现滑动开关效果
Aug 19 Javascript
jQuery实现带延迟效果的滑动菜单代码
Sep 02 Javascript
jquery 判断是否支持Placeholder属性的方法
Feb 07 Javascript
深入理解Angular4中的依赖注入
Jun 07 Javascript
详解使用Vue Router导航钩子与Vuex来实现后退状态保存
Sep 11 Javascript
vue中keep-alive组件的入门使用教程
Jun 06 Javascript
学习LayUI时自研的表单参数校验框架案例分析
Jul 29 Javascript
vue+render+jsx实现可编辑动态多级表头table的实例代码
Apr 01 Javascript
详解Vue router路由
Nov 20 Vue.js
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 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
php生成略缩图代码
2012/07/16 PHP
PHP生成随机密码4种方法及性能对比
2020/12/11 PHP
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
Javascript排序算法之合并排序(归并排序)的2个例子
2014/04/04 Javascript
微信分享的标题、缩略图、连接及描述设置方法
2014/10/14 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
基于Jquery和html5实现炫酷的3D焦点图动画
2016/03/02 Javascript
全面理解闭包机制
2016/07/11 Javascript
js 基础篇必看(点击事件轮播图的简单实现)
2016/08/20 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
2018/09/07 Javascript
element-ui中按需引入的实现
2019/12/25 Javascript
vue操作dom元素的3种方法示例
2020/09/20 Javascript
python中实现精确的浮点数运算详解
2017/11/02 Python
python中的字典操作及字典函数
2018/01/03 Python
python中正则表达式的使用方法
2018/02/25 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
2019/05/28 Python
python写日志文件操作类与应用示例
2019/07/01 Python
Python3简单爬虫抓取网页图片代码实例
2019/08/26 Python
python绘制随机网络图形示例
2019/11/21 Python
PyTorch中topk函数的用法详解
2020/01/02 Python
Pycharm中如何关掉python console
2020/10/27 Python
JNI的定义
2012/11/25 面试题
请说出这段代码执行后a和b的值分别是多少
2015/03/28 面试题
生物化学研究助理员求职信
2013/10/09 职场文书
DIY蛋糕店的创业计划书范文
2013/12/26 职场文书
校园十大歌手策划书
2014/02/01 职场文书
公司年夜饭通知
2015/04/25 职场文书
python如何在word中存储本地图片
2021/04/07 Python
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
MySQL删除和插入数据很慢的问题解决
2021/06/03 MySQL
python实现简易自习室座位预约系统
2021/06/30 Python
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python