第三个例子明明与类名不匹配,为什么也能触发change事件?

来源:3-2 jQuery表单事件之change事件

sfanxi

2018-08-12 11:21

<div class="aaron3">textarea:

            <textarea class="target2" rows="3" cols="20">多行的文本输入控件</textarea>

</div>


     //监听textarea:

    $(".target3").change(function(e) {

        $("#result").html(e.target.value)

    })


写回答 关注

5回答

  • 慕无忌4172087
    2020-04-01 04:08:04

    因为它指向的是第二个函数啊 

  • 慕斯卡3392546
    2019-09-11 15:07:44
    giao


  • T松子
    2018-09-07 09:55:52

    你把对textarea的监听注释掉,你会发现,修改textarea中的内容,还是会出现在result中,说明下面这一段监听是不起作用的。

     //监听textarea:

        $(".target3").change(function(e) {

            $("#result").html(e.target.value)

        })

    能触发change是因为在对select的监听中,已经对target2监听过了。(textarea的类名和select的类名相同了,都为target2)

  • qq_忆年华无恒
    2018-08-30 22:37:11

    因为3个监听代码一模一样,除了获取的class类不同  而class可以在HTML里有很多个  这里给select与textarea 都设置是target2     所以这句target3的监听没有用到

  • 三足乌
    2018-08-13 15:14:23

    这个是代码写错了,没有class为target3的元素,这个change也确实没有用。textarea能触发change事件是因为它的类名和select的类名一样,它其实是触发了这个事件。

    //监听select:

        $(".target2").change(function(e) {

            $("#result").html(e.target.value)

        })


jQuery基础(三)—事件篇

jQuery第三阶段开启事件修炼,掌握对页面进行交互的操作

89997 学习 · 625 问题

查看课程

相似问题