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 相关文章推荐
一个加密JavaScript的开源工具PACKER2.0.2
Nov 04 Javascript
javascript不同页面传值的改进版
Sep 30 Javascript
基于jquery的cookie的用法
Jan 10 Javascript
javascript中加号(+)操作符的一些神奇作用
Jun 06 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
Mar 03 Javascript
JS获取网页图片name属性的方法
Apr 01 Javascript
javascript跨域原因以及解决方案分享
Apr 08 Javascript
javascript html5摇一摇功能的实现
Apr 19 Javascript
基于javascript实现按圆形排列DIV元素(一)
Dec 02 Javascript
jquery+css实现Tab栏切换的代码实例
May 14 jQuery
layui弹出框Tab选项卡的示例代码
Sep 04 Javascript
Vue父组件监听子组件生命周期
Sep 03 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
PHP5中虚函数的实现方法分享
2011/04/20 PHP
php专用数组排序类ArraySortUtil用法实例
2015/04/03 PHP
php批量修改表结构实例
2017/05/24 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
用javascript实现点击链接弹出&quot;图片另存为&quot;而不是直接打开
2007/08/15 Javascript
JavaScript window.setTimeout() 的详细用法
2009/11/04 Javascript
jQuery遍历json中多个map的方法
2015/02/12 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
js弹出对话框方式小结
2015/11/17 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
2016/01/08 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
jquery uploadify隐藏上传进度的实现方法
2017/02/06 Javascript
jQuery实现下拉菜单的实例代码
2017/06/19 jQuery
基于jstree使用AJAX请求获取数据形成树
2017/08/29 Javascript
慕课网题目之js实现抽奖系统功能
2017/09/19 Javascript
js中json对象和字符串的理解及相互转化操作实现方法
2017/09/22 Javascript
Vue完整项目构建(进阶篇)
2018/02/10 Javascript
详解vue2.0+axios+mock+axios-mock+adapter实现登陆
2018/07/19 Javascript
node错误处理与日志记录的实现
2018/12/24 Javascript
Node.js API详解之 tty功能与用法实例分析
2020/04/27 Javascript
Python爬虫通过替换http request header来欺骗浏览器实现登录功能
2018/01/07 Python
详解django三种文件下载方式
2018/04/06 Python
python 把文件中的每一行以数组的元素放入数组中的方法
2018/04/29 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
python的pstuil模块使用方法总结
2019/07/26 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
python 基于wx实现音乐播放
2020/11/24 Python
HTML5实现一个能够移动的小坦克示例代码
2013/09/02 HTML / CSS
公司业务主管岗位职责
2013/12/07 职场文书
募捐倡议书怎么写
2014/05/14 职场文书
书法大赛策划方案
2014/06/04 职场文书
本科应届生自荐信
2014/06/29 职场文书
违章停车检讨书
2014/10/21 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
劳动者解除劳动合同通知书
2015/04/16 职场文书