本文将介绍select 原生的常用方法,这些都是经过测试,兼容ie6到ie10,及chrome,火狐等,也就是说大部分浏览器都兼容。如果大家发现有不兼容的情况,可以跟我留言。

我们对基本的用法了如指掌后,jQuery、kissy这些框架用起来更方便。

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>select用法总结</title>
</head>
<body>
<h3>select的常用方法</h3>
<hr/> <div>
<h3>默认选中某一项,使用option的selected属性</h3>
<select name="test" id="test1">
<option value="1">1</option>
<option value="2" selected>2</option>
<option value="3">3</option>
</select>
</div> <div>
<h3>js使某一项选中</h3>
<select name="test" id="test2">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<script>
var test2 = document.getElementById('test2');
test2.value='3';
//kissy用法
//S.one('#test2').val('3');
</script>
</div> <div>
<h3>事件绑定,获取选中项的值</h3>
<select name="test" id="test3">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<script>
var test3 = document.getElementById('test3');
test3.onchange = function(e){
//经常看到有的代码这样写this.options[this.selectedIndex].value
//其实不用那么复杂,this.value就可以取到当前选中项的值,所有浏览器都支持
var val = this.value; //var val = test3.value;
alert(val);
}
</script>
</div> <div>
<h3>获取选中项的index</h3>
<select name="test" id="test4">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<script>
var test4 = document.getElementById('test4');
test4.onchange = function(e){
var idx = this.selectedIndex; //从0开始
alert(idx);
}
</script>
</div>
<div>
<h3>获取选中项的text</h3>
<select name="test" id="test5">
<option value="1">text1</option>
<option value="2">text2</option>
<option value="3">text3</option>
</select>
<script>
var test5 = document.getElementById('test5');
test5.onchange = function(e){
var selOption = this.options[this.selectedIndex]; //var val = test3.value;
// ie,chrome 下调用 innerText 其他浏览器如firefox下调用 textContent
var text = selOption.innerText || selOption.textContent; //兼容性
//所有浏览器都支持w3c标准的innerHTML,如果text里有标签可以通过正则替换
var html = selOption.innerHTML;
alert(text);
alert(html);
}
</script>
</div> </body>
</html>

代码地址:http://jsfiddle.net/6o1fdvm0/ 大家可以在这里测试

html select用法总结的更多相关文章

  1. 网络通信 --> select()用法

    select()用法 头文件 #include <sys/time.h> #include <sys/types.h> #include <unistd.h> 定义 ...

  2. python+selenium七:下拉框、选项框、select用法

    # from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsimpo ...

  3. golang学习之select用法

    早期的select函数是用来监控一系列的文件句柄,一旦其中一个文件句柄发生IO操作,该select调用就会被返回.golang在语言级别直接支持select,用于处理异步IO问题. select用法同 ...

  4. 数据库Oracle的select用法(部分)

    Oracle的select用法(部分): 1.查询所有: select * from employees; 2.加上where子句:用选择限制行 select * from employees whe ...

  5. 每天玩转3分钟 MyBatis-Plus - 6. select 用法

    每天玩转3分钟 MyBatis-Plus - 1. 配置环境 每天玩转3分钟 MyBatis-Plus - 2. 普通查询 每天玩转3分钟 MyBatis-Plus - 3. 高级查询(一) 每天玩转 ...

  6. select用法&原理详解(源码剖析)(转)

    今天遇到了在select()前后fd_set的变化问题,查了好久终于找到一个有用的帖子了,很赞,很详细!!原文链接如下: select用法&原理详解(源码剖析) 我的问题是: 如下图示:在se ...

  7. select用法

    每一次操作select的时候,总是要出来翻一下资料,不如自己总结一下,以后就翻这里了. 比如<select class="selector"></select&g ...

  8. shell编程中的select用法

    select 语句 select表达式是bash的一种扩展应用,擅长于交互式场合.用户可以从一组不同的值中进行选择: select var in ... ; do break; done .... n ...

  9. 非阻塞式socket的select()用法

    Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只 是习惯写诸如 connect.accept.recv或recvfrom这样的阻塞程 ...

随机推荐

  1. Linux环境变量的设置和查看方法

    1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ ech ...

  2. Educational Codeforces Round 3 E (609E) Minimum spanning tree for each edge

    题意:一个无向图联通中,求包含每条边的最小生成树的值(无自环,无重边) 分析:求出这个图的最小生成树,用最小生成树上的边建图 对于每条边,不外乎两种情况 1:该边就是最小生成树上的边,那么答案显然 2 ...

  3. 【原】Redis分区

    Redis高级篇 分区 为什么分区? Redis中的分区主要有两个目的: 允许用多台机器的内存存放更大的数据集.如果没有分区,那么你只能存放单台机器内存的最大值的数据集. 允许用多核和多台机器提高计算 ...

  4. MFC定时器使用

    MFC定时器实现方法 方法一:CWnd类提供的成员函数SetTimer实现定时器功能,只能在CWnd类或其派生类中调用. 方法二:Windows API函数SetTimer来实现. MFC定时器 启动 ...

  5. 如何添加网站for Linux(绑定域名)

    [以下配置的路径以阿里云提供的标准环境路径为准,如果您另行安装,请根据实际安装路径配置].   1.cd /alidata/server/httpd/conf/vhosts/ 进入绑定域名所在目录, ...

  6. Makefile.am讲解

    Makefile.am详解 实战Makefile.amMakefile.am是一种比Makefile更高层次的规则.只需指定要生成什么目标,它由什么源文件生成,要安装到什么目录等构成.表一列出了可执行 ...

  7. HUOJ-10857 最大的面积 凸包+DP

    题目链接:http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=10857&courseid=55 比赛的时候 ...

  8. Kooboo中如何切换数据库(注意:如果切换数据库,需要Kooboo中没有一个website 否则会报错数据库中没有表之类的)

    Setup database provider 来自Kooboo document   Kooboo CMS can almost support all the types of database, ...

  9. leptonica 学习笔记2——pixBackgroundNormSimple

    1 pixBackgroundNormSimple 函数功能:自适应背影标准化 位置:adampmap.c /*-------------------------------------------- ...

  10. 第九章、文件与文件系统的压缩与打包 3. 打包命令: tar

    打包命令: tar gzip 与 bzip2 也能够针对目录来进行压缩, 不过,这两个命令对目录的压缩指的是『将目录内的所有文件 "分别" 进行压缩』! 将多个文件或目录包成一个大 ...