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 相关文章推荐
js获取location.href的参数实例代码
Aug 02 Javascript
js调用图片隐藏&amp;显示实现代码
Sep 13 Javascript
jquery实现可自动收缩的TAB网页选项卡代码
Sep 06 Javascript
JavaScript的函数式编程基础指南
Mar 19 Javascript
Bootstrap基本布局实现方法详解
Nov 25 Javascript
web打印小结
Jan 11 Javascript
jQuery 插件实现随机自由弹跳气泡样式
Jan 12 Javascript
JavaScript省市级联下拉菜单实例
Feb 14 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
Sep 28 Javascript
weui上传多图片,压缩,base64编码的示例代码
Jun 22 Javascript
javascript实现雪花飘落效果
Aug 19 Javascript
关于JavaScript数组去重的一些理解汇总
Sep 10 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 中dirname(_file_)讲解
2007/03/18 PHP
Phpbean路由转发的php代码
2008/01/10 PHP
php用户注册页面利用js进行表单验证具体实例
2013/10/17 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
php获取服务器操作系统相关信息的方法
2016/10/08 PHP
jQuery 入门讲解1
2009/04/15 Javascript
js获取下拉列表框中的value和text的值示例代码
2014/01/11 Javascript
Javascript图片上传前的本地预览实例
2014/06/16 Javascript
函数式 JavaScript(一)简介
2014/07/07 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
bootstrap-treeview自定义双击事件实现方法
2016/01/09 Javascript
Angular中$compile源码分析
2016/01/28 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
使用Vue-Router 2实现路由功能实例详解
2017/11/14 Javascript
Angular2实现组件交互的方法分析
2017/12/19 Javascript
layer.js之回调销毁对话框的例子
2019/09/11 Javascript
Layui数据表格 前后端json数据接收的方法
2019/09/19 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
vue脚手架项目创建步骤详解
2021/03/02 Vue.js
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
2015/04/25 Python
Python的Django框架下管理站点的基本方法
2015/07/17 Python
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
python 编程之twisted详解及简单实例
2017/01/28 Python
使用python和pygame绘制繁花曲线的方法
2018/02/24 Python
浅谈Tensorflow模型的保存与恢复加载
2018/04/26 Python
详解flask入门模板引擎
2018/07/18 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
python+requests接口压力测试500次,查看响应时间的实例
2020/04/30 Python
HTML5新增的Css选择器、伪类介绍
2013/08/07 HTML / CSS
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
体育教学随笔感言
2014/02/24 职场文书
2014党委书记四风问题对照检查材料思想汇报
2014/09/22 职场文书
副总经理岗位职责范本
2015/04/08 职场文书