JS检索下拉列表框中被选项目的索引号(selectedIndex)


Posted in Javascript onDecember 17, 2019

前言

在开始本文主题之前,先来看一个 HTML demo,一个非常简单的选择列表(select):

<select>
  <option>one</option>
  <option>two</option>
  <option>three</option>
</select>

JS检索下拉列表框中被选项目的索引号(selectedIndex)

请思考一个问题,如果 这些数据(one/two/three)是从后台请求过来且动态添加渲染进DOM系统 的话,你是无法确定每个列表项的索引号的,也就意味着这些列表项没有 ID。显然,我们需要获取到用户选择的列表项与当前列表项的索引号(ID)。

selectedIndex API

JavaScript 提供了找到select ID索引号的方法,它反映了第一个或最后选择的索引 <option> 元件,这取决于值 multiple,注意,该值为 -1 指示未选择任何元素。

selectedIndex 属性可设置或返回下拉列表中被选选项的索引号,若允许多重选择,则仅会返回第一个被选选项的索引号。

语法:

// 获取索引号
selectElem.selectedIndex
// 重置索引号(newIndex为新值)
selectElem.selectedIndex = newIndex

获取索引 / 重置索引

我们可以使用 JavaScript 提供的 API 来获取当前用户选择列表项的索引号。当然,我们也可以重置(改变)索引号。

HTML:

<select id="select">
  <option>one</option>
  <option>two</option>
  <option>three</option>
</select>
<button onclick="get()">获取索引号</button>
<button onclick="reset()">重置索引号</button>

JavaScript:

// 获取列表项(select)
var select = document.getElementById('select')
// 获取索引号
function get(){
  console.log(`当前索引号:${select.selectedIndex}`)
}
// 重置索引号
function reset(){
  let flag = select.selectedIndex //频繁使用封装一下(*^_^*)
  if(flag == '0'){ // 重置索引值为0的列表项
    flag = 999 //更改值为999
    console.log(`重置后索引号:${flag}`)
    console.log(`注意:重置不会改变原值,不信你看现在的值:${select.selectedIndex}`)
  }
}

JS检索下拉列表框中被选项目的索引号(selectedIndex)

总结

以上所述是小编给大家介绍的JS检索下拉列表框中被选项目的索引号(selectedIndex),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Javascript Tab 导航插件 (23个)
Jun 11 Javascript
jQuery 1.5最新版本的改进细节分析
Jan 19 Javascript
Prototype源码浅析 Enumerable部分(二)
Jan 18 Javascript
JavaScript可否多线程? 深入理解JavaScript定时机制
May 23 Javascript
jquery插件制作 提示框插件实现代码
Aug 17 Javascript
jquery基础教程之数组使用详解
Mar 10 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
May 28 Javascript
js实现Form栏显示全格式时间时钟效果代码
Aug 19 Javascript
js数组去重的5种算法实现
Nov 04 Javascript
AngularJS中$http使用的简单介绍
Mar 17 Javascript
JS数组搜索之折半搜索实现方法分析
Mar 27 Javascript
深入理解JS异步编程-Promise
Jun 03 Javascript
JS实现打字游戏
Dec 17 #Javascript
js实现打字小游戏
Dec 17 #Javascript
微信小程序缓存支持二次开发封装实现解析
Dec 16 #Javascript
element-ui tooltip修改背景颜色和箭头颜色的实现
Dec 16 #Javascript
ant-design-vue 实现表格内部字段验证功能
Dec 16 #Javascript
js DOM的事件常见操作实例详解
Dec 16 #Javascript
js中script的上下放置区别,Dom的增删改创建操作实例分析
Dec 16 #Javascript
You might like
php桌面中心(一) 创建数据库
2007/03/11 PHP
PHP 工厂模式使用方法
2010/05/18 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
用JQuery 实现AJAX加载XML并解析的脚本
2009/07/25 Javascript
jQuery Study Notes学习笔记 (二)
2010/08/04 Javascript
jQuery插件pagewalkthrough实现引导页效果
2015/07/05 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形菜单
2015/11/30 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
2016/06/07 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
bootstrap select插件封装成Vue2.0组件
2017/04/17 Javascript
angular使用post、get向后台传参的问题实例
2017/05/27 Javascript
Vue.js中的图片引用路径的方式
2017/07/28 Javascript
Vue中如何实现proxy代理
2018/04/20 Javascript
JavaScript数组去重算法实例小结
2018/05/07 Javascript
element-ui 关于获取select 的label值方法
2018/08/24 Javascript
Vue 的双向绑定原理与用法揭秘
2020/05/06 Javascript
Web服务器框架 Tornado简介
2014/07/16 Python
python实现根据月份和日期得到星座的方法
2015/03/27 Python
python图像处理之反色实现方法
2015/05/30 Python
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
python操作 hbase 数据的方法
2016/12/18 Python
Python编程之event对象的用法实例分析
2017/03/23 Python
Python的numpy库中将矩阵转换为列表等函数的方法
2018/04/04 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
HTML5 Video/Audio播放本地文件示例介绍
2013/11/18 HTML / CSS
物业保安员岗位职责制度
2014/01/30 职场文书
经贸韩语专业大学生职业规划
2014/02/14 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
优质服务演讲稿
2014/05/14 职场文书
计算机应用专业自荐信
2014/07/05 职场文书
标准单位租车协议书
2014/09/23 职场文书
小学重阳节活动总结
2015/03/24 职场文书
餐饮店长岗位职责
2015/04/14 职场文书
二审答辩状范文
2015/05/22 职场文书
水知道答案观后感
2015/06/08 职场文书