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 相关文章推荐
判断是否输入完毕再激活提交按钮
Jun 26 Javascript
jquery获取input表单值的代码
Apr 19 Javascript
用Jquery实现多级下拉框无刷新的联动
Dec 22 Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
Oct 06 Javascript
JS动态获取当前时间,并写到特定的区域
May 03 Javascript
浅谈javascript 函数表达式和函数声明的区别
Jan 05 Javascript
AngularJs表单校验功能实例代码
Feb 09 Javascript
JavaScript实现区块链
Mar 14 Javascript
jquery使用FormData实现异步上传文件
Oct 25 jQuery
浅谈React碰到v-if
Nov 04 Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 Javascript
浅谈关于vue中scss公用的解决方案
Dec 02 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新手上路(三)
2006/10/09 PHP
PHP session有效期问题
2009/04/26 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
2013/06/28 PHP
PHP入门之常量简介和系统常量
2014/05/12 PHP
php从数组中随机选择若干不重复元素的方法
2015/03/14 PHP
Laravel与CI框架中截取字符串函数
2016/05/08 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
php微信分享到朋友圈、QQ、朋友、微博
2019/02/18 PHP
网页自动跳转代码收集
2009/09/27 Javascript
JS运行耗时操作的延时显示方法
2010/11/19 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
jquery自动切换tabs选项卡的具体实现
2013/12/24 Javascript
jQuery中before()方法用法实例
2014/12/25 Javascript
jQuery+html5+css3实现圆角无刷新表单带输入验证功能代码
2015/08/21 Javascript
jQuery实现获取绑定自定义事件元素的方法
2015/12/02 Javascript
简单的渐变轮播插件
2017/01/12 Javascript
详解vue-cli + webpack 多页面实例应用
2017/04/25 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
探讨Vue.js的组件和模板
2017/10/27 Javascript
利用Vue2.x开发实现JSON树的方法
2018/01/04 Javascript
微信小程序实现手指触摸画板
2018/07/09 Javascript
javascript实现扫雷简易版
2020/08/18 Javascript
python自定义类并使用的方法
2015/05/07 Python
Python中函数参数设置及使用的学习笔记
2016/05/03 Python
python递归查询菜单并转换成json实例
2017/03/27 Python
wxPython实现分隔窗口
2019/11/19 Python
python+Django+pycharm+mysql 搭建首个web项目详解
2019/11/29 Python
基于python调用psutil模块过程解析
2019/12/20 Python
Python使用struct处理二进制(pack和unpack用法)
2020/11/12 Python
Nike俄罗斯官方网站:Nike RU
2021/03/05 全球购物
外贸英语专业求职信范文
2013/12/25 职场文书
更夫岗位责任制
2014/02/11 职场文书
应届毕业生求职信
2014/05/26 职场文书
滴水洞导游词
2015/02/10 职场文书
雾霾停课通知
2015/04/24 职场文书
高三英语教学反思
2016/03/03 职场文书