javascript中点击事件传入this的用法

时间:2024-03-06 19:11:27

在script中有几种绑定事件的方法,有的在绑定函数中传入this参数,有的没有,那么,它们之间到底有什么区别呢?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="/index.html" method="post">
    {% csrf_token %}
    <input type="text" name="username"/>
    <a onclick="submit()">提交</a>
    <a onclick="submit1(this)">提交</a>
    <a id="fm">提交</a>

</form>
<script src="/static/js/jquery-3.3.1.min.js"></script>
<script>
    /*
     绑定事件中this的用法
    */
    function submit() {
        console.log(this)
    }
    /*
     如果以此种方式绑定事件,括号中不传入this参数,那么this在这里代指的就是整个doucumeng对象
     */
    
  function submit1(ths) { console.log(ths) } /* 如果以此种方式绑定事件,括号中传入this参数,那么this在这里代指的就是当前标签对象 */
  $(
\'#fm\').click (function submit3() { console.log(this); }); /* 找到当前标签 如果以此种方式绑定事件,括号中不传入this参数,那么this在这里代指的就是当前标签对象 */ </script> </body> </html>