JQUERY —— 绑定事件/获取下拉框的值

来源:互联网 发布:核酸数据库 编辑:程序博客网 时间:2024/06/07 16:57

一、绑定事件方式 —— bind()、live()、delegate()、on()

  bind():匹配已有元素添加一个或多个事件处理器

    $(selector).bind(event,data,function)

      event必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

          单事件处理:例如 $(".btn-test").bind("click",data,function(){});

          多事件处理:1.利用空格分隔多事件,例如 $(".btn-test").bind("click dbclick mouseout",data,function(){});

                2.利用大括号灵活定义多事件,例如 $(".btn-test").bind({"mouseout":function(){}, "click":function(){}, ...}) 

                3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

                 大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;     

      data可选;需要传递的参数;

      function必需;当绑定事件发生时,需要执行的函数;

           $(".btn-test").unbind("click"); (删除事件)

  live() —— 向当前或未来的匹配元素添加一个或多个事件处理器;

    $(selector).live(event,data,function)

      event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

          单事件处理:例如 $(".btn-test").live("click",data,function(){});

          多事件处理:1.利用空格分隔多事件,例如 $(".btn-test").live("click dbclick mouseout",data,function(){});

                  2.利用大括号灵活定义多事件,例如 $(".btn-test").live({"mouseout":function(){}, "click":function(){}, ...}) 

               3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

                 大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;     

      data:可选;需要传递的参数;

      function:必需;当绑定事件发生时,需要执行的函数;

           $(".btn-test").die("click");(删除事件)

  delegate() —— 为指定的当前或未来元素(被选元素的子元素)添加一个或多个事件处理程序。

    $(selector).delegate(childSelector,event,data,function)

      childSelector: 必需项;需要添加事件处理程序的元素,一般为selector的子元素;

      event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

        单事件处理:例如 $(".header").delegate("#btn-test1","click",data,function(){});

        多事件处理:1.利用空格分隔多事件,例如 $(".header").delegate("#btn-test1","click dbclick mouseout",data,function(){});

              2.利用大括号灵活定义多事件,例如 $(".header").delegate("#btn-test1",{"mouseout":function(){}, "click":function(){}, ...}) 

              3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

                 大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;     

      data:可选;需要传递的参数;

      function:必需;当绑定事件发生时,需要执行的函数;

  on() —— 为指定的当前或未来元素(被选元素的子元素),添加一个或多个事件处理程序。

  使用方式 

    $(selector).on(event,childselector,data,function)

      event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

        单事件处理:例如 $(".header").on("click",".btn-test",data,function(){});

        多事件处理:1.利用空格分隔多事件,例如 $(".header").on("click dbclick mouseout",".btn-test",data,function(){});

              2.利用大括号灵活定义多事件,例如 $(".header").on({"mouseout":function(){}, "click":function(){}, ...},".btn-test"); 

              3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

                 大括号替代方式:绑定较为灵活,可以给事件单独绑定函数; 

      childSelector: 可选;需要添加事件处理程序的元素,一般为selector的子元素;    

      data:可选;需要传递的参数;

      function:必需;当绑定事件发生时,需要执行的函数;

           $(".header").off("click",".btn-test");(删除事件)

  四种方式的异同和优缺点

  相同点:

    1.都支持单元素多事件的绑定;空格相隔方式或者大括号替代方式;

    2.均是通过事件冒泡方式,将事件传递到document进行事件的响应;

  比较和联系:

    1.bind()函数只能针对已经存在的元素进行事件的设置;但是live(),on(),delegate()均支持未来新添加元素的事件设置;

            2.bind()在官方推出1.7版本后不推荐使用,live()函数在1.9版本已经删除,替代其为on()函数;

       3.live()函数和delegate()函数两者类似,但是live()函数在执行速度,灵活性和CSS选择器支持方面较delegate()差些。

       4.bind()支持Jquery所有版本;live()支持jquery1.8-;delegate()支持jquery1.4.2+;on()支持jquery1.7+; 


二、通过JQUERY获得下拉框的显示值

   1. 参考如下代码
   $("select").val();  // 选中项目的value值

  $("select option:checked").text(); // 选中项目的显示值

  2. 示例如下:
     1)创建Html元素

请选择:<select id="sel"><option value="1">选项1</option><option value="2">选项2</option><option value="3">选项3</option><option value="4">选项4</option></select><input type="button" value="点击查看被选项目">

   2)编写jquery代码

$(function(){$("input").click(function() {a = $("#sel").val();b = $("#sel option:checked").text();alert("被选项目的值:"+a+",被选项目的显示值:"+b+"。");});})

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 早教机构业绩不好怎么办 孩子上早教课哭怎么办 两岁宝宝哭闹不止怎么办 7个月宝宝怕生疏怎么办 5个月宝宝怕洗澡怎么办 4个月宝宝认人怎么办 2岁宝宝语言迟缓怎么办 宝宝老是哭闹不睡觉怎么办 7岁儿童说话晚怎么办 一岁多的婴儿说话晚该怎么办 宝宝甲低300多怎么办 两岁半宝宝还不怎么会讲话怎么办 宝宝两岁半了还不讲话怎么办 两岁宝宝怕生人怎么办 四岁宝宝不说话怎么办 1岁宝宝牙齿黄斑怎么办 儿子俩周半了就是不说话怎么办 两岁宝宝牙齿上有黑渍怎么办 两岁宝宝牙齿发黑怎么办 求帮助宝宝刷牙不会漱口怎么办 牙膏不小心吞了怎么办 宝宝误吃了牙膏怎么办 宝宝吃了30g牙膏怎么办 孩子把牙膏吞了怎么办 二岁宝宝有蛀牙怎么办 3岁宝宝有蛀牙了怎么办 三岁宝宝夜惊怎么办 小班孩子跳舞不好好跳怎么办 15个月宝宝拉稀怎么办 孩子学习不认真该怎么办 孩子学习不自觉该怎么办 孩子学习压力大该怎么办 分手发信息不回怎么办 两岁宝宝不会回答问题怎么办 分手了我还想他怎么办 两岁宝宝特别不听话怎么办 2岁宝宝争东西怎么办 两岁宝宝钙吸收不好怎么办 1岁宝宝害羞胆小怎么办 2岁宝宝害羞胆小怎么办 6个月的宝宝胆小怎么办