$(this)在onclick属性中不起作用

时间:2016-04-09 19:24:01

标签: javascript jquery this

QGraphicsProxyWidget

这是<head> <script> function call() { var id = $(this).data("id"); alert(id); } </script> </head> <body> <div data-id="5" onclick="call();"></div> </body> 代码之间的javascript函数。当它将<script>称为id时。为什么undefined无效?

1 个答案:

答案 0 :(得分:5)

您必须将元素作为call()函数的参数传递,如下所示。

&#13;
&#13;
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script>
        function call(elm) {
            var id = $(elm).data("id");
            alert(id);
        }
    </script>
</head>

<body>
    <div data-id="5" onclick="call(this);">Click Here</div>
</body>
&#13;
&#13;
&#13;