下拉框的点击事件

下拉框是我们应用的比较多的页面元素,结合实际工作中遇到的问题说一下关于下拉框注册事件的一些例子,希望对大家有所帮助。
$(function () {
    $(".events").change(function () {
        if ($(this).children(‘option:selected‘).val() == ‘所有事件‘) {
            $(".wrapper").addClass("all");
            $(".wrapper").removeClass("emerency");
            $(".wrapper").removeClass("normal");
        }
        else if ($(this).children(‘option:selected‘).val() == ‘紧急事件‘) {
            $(".options").show();
            $(".button").show(function(){
                $(this).click(function(){
                    $(".timefly").show();
                    setTimeout(function(){$(".timefly").hide(function(){
                        // $(".wrapper").hide();
                        $(".three-page").show();
                    });},5000);
                })
            })
            // $(".wrapper").css("background-image", "url(‘img/emergency.png‘)")

            $(".wrapper").addClass("emergency");

            $(".wrapper").removeClass("all");

            $(".wrapper").removeClass("normal");
        }
        else if ($(this).children(‘option:selected‘).val() == ‘普通事件‘) {
            $(".wrapper").addClass("normal");
            $(".wrapper").removeClass("all");
            $(".wrapper").removeClass("emergency");
        }
    });

代码如下:

  <select name="" id="sel">
    <option value="111">1</option>
    <option value="222">2</option>
    <option value="333">3</option>
  </select>

以上是一段非常简单的单选下拉框代码,如果我们要通过单击下拉选项获取对应的value,大致的代码如下:

代码如下:

var sel=document.getElementById("sel");
  var option=sel.options;
  for(var i=0;i<option.length;i++){
    option[i].onclick=function(){
      alert(this.text);//获取下拉选项的文本值
      alert(this.value);//获取下拉选项的value值
    }
  } 

 以上代码在ie9以下以及chrome上不能产生预期效果,在Firefox上有效。

针对这种情况,不建议在option选项上绑定click事件,建议利用change事件来代替,因为change是通用的,从本质上看来就是change。

代码如下:

  

var sel=document.getElementById("sel");
  sel.onchange=function(){
    alert(sel.options[sel.selectedIndex].value);
  } 
时间: 2024-09-28 07:13:03

下拉框的点击事件的相关文章

js设置下拉框选中后change事件无效解决

下拉框部分代码: <select id="bigType"> <option value="">请选择</option> <option value="1">xiamen</option> <option value="2">beijing</option> </select> <select id="smallTy

解决element-ui 下拉el-dropdown-item添加点击事件@click无效

一.原代码 <DropdownMenu slot="list"> <DropdownItem @click="clickPayButton(payWay)">{{payWay.names}}</DropdownItem> </DropdownMenu> 二.修改代码 <DropdownMenu slot="list"> <DropdownItem @click.native=&qu

快速解决js开发下拉框中blur与click冲突

在开发中我们会经常遇到blur和click冲突的情况.下面叙述了开发中常遇到的"下拉框"的问题,并提供了两种解决方案. 一.blur和click事件简述 blur事件:当元素失去焦点时触发blur事件:其为表单事件,blur和focus事件不会冒泡,其他表单事件都可以.click事件:当点击元素时触发click事件:所有元素都有此事件,会产生冒泡. 示例1:blur事件为表单事件 1 2 3 4 5 6 7 8 9 10 11 12 13 <input type="te

DevExpress gridview下拉框的再次研究

前几天写了一篇关于研究DevExpress gridview下拉框的随笔(DevExpress gridview下拉框repositoryItemComboBox的使用),被大神(@爱编程的大叔)评论为:成功用世界上最繁琐的方法来使用Devexpress中的Gridview控件中的下拉框,之后就一直在想那肯定是还有更加简便的办法,刚好今天有空闲时间,就去了官网研究起了gridControl的属性(https://documentation.devexpress.com/#WindowsForms

DevExpress gridview下拉框repositoryItemComboBox的使用

本以为DevExpress gridview中的下拉框会像比原来的datatgridview中的下拉框绑定数据简单好用,没想到费了老大劲,查阅各种资料总算是绑定上了数据,并且能够实现想要的效果.下面就详细写一下这个实现的过程,分享一下,同时也是对这个知识再次熟悉一遍. 一.绑定前准备 这一部分基本上是一些基础的知识,但也有些地方要注意的. 1.添加下拉框列 在Grid Designer中,添加一列,在这列的ColumnEdit熟悉中,可以选择这列的编辑样式,比如让这列是一个按钮或者选择框等等,这

优化jeecg底层高级查询,支持bool值和下拉框查询

最近在用jeecg做项目,在使用高级查询的时候发现它不支持布尔值的查询以及列表的下拉框的查询,所以小编修改了底层代码,完善了高级查询,现在与大家一起分享.先上一张图给大家看一下修改前的高级查询. 它只支持了文本的查询以及日期格式的查询,很难满足在使用过程中的要求.所以小编把他的功能丰富了一下,下面把源码分享给大家. 首先先简单介绍一下jeecg高级查询的原理,一切的秘密都在DataGridTag这个标签类里面,在打开一个页面的时候,这个类会对页面的左右变迁进行初始化,以及对高级查询的页面进行构造

自定义弹出窗口,实现可输入可过滤自动选择下拉框

/** jQuery dialog windows * author : piyg Copyright(c) : 2014-09-01 09:28 Version 1.0-pre 自定义定时定频弹出窗口: 用法: 在自身jsp页面调用 showDialog(title,fn1,fn2),showProcessDialog(title,fn1,fn2)方法. title: 自定义窗口头信息. fn1 ,fn2 自定义回调函数,分别绑定2个按钮事件 fn1: "继续提交"按钮事件. fn2

selenium Select下拉框

先来认识一下下拉框,以百度的"高级设置"为例 介绍两种方法来处理下拉框:使用click事件,使用Select方法 使用click事件 上述下拉框的源代码如下: 虽然我们可以在html源文件中看到select的各个选项,但是,如果我们没有定位到该下拉框的话,是定位不到里面的子选项的, 所以使用click事件,需要一步一步的点击 from selenium import webdriver driver=webdriver.Firefox() driver.get("https:

Combobox下拉框两级联动

下拉框的两级联动是我们开发中经常遇到一种情况.比如一个学生管理系统中,根据年级.科目及姓名查询学生考试成绩,年级和科目都是硬盘中的有限数据(数据库)而学生则可以有用户手动指定,这时在数据库中有年级和科目两张表,每门科目都对应一个年级,所以我们可以用两个下拉框(Combobox)来存储年级和科目信息来供用户选择.界面如下: 这时如果我们将科目对应的下拉框直接绑定科目表时,用户选择一个年级后还要从所有科目中进行选择就会降低系统的友好性,甚至可能出现没有任何意义的查询语句.我们可以先绑定年级下拉框的数