如何拾取一个元素,它将使用jQuery调用此函数中的函数

时间:2014-07-04 15:07:45

标签: javascript jquery dom

我有一个HTML元素,如下所示:

    <a onclick="doSomething()">Do something!</a>

我需要在这个调用函数中拾取调用它的父元素。像这样:

    function doSomething() {
            var $parentElement = this.parents('.theClass');
    }

3 个答案:

答案 0 :(得分:1)

您可以将this作为参数传递给doSomething,因此请按以下方式定义:

function doSomething(elem) {
   var $parentElement = $(elem).parents('.theClass');
} 

HTML:

<a onclick="doSomething(this)">Do something!</a>

现在,参数包含可以使用jQuery包装它的元素,并根据需要横向DOM。


但是我不建议使用inline-js,尤其是在你包含了jQuery之后。

使用它会好得多:

$('a').click(function(e){
    var $parentElement = $(this).parents('.theClass');
});  

答案 1 :(得分:0)

您可以在纯JavaScript中使用。parentNode表示法。

<a onclick="doSomething(this)">Do something!</a>

function doSomething(elem) {
    var parent = document.getElementByID(elem).parentNode;
} 

答案 2 :(得分:0)

<a onclick="doSomething.call(this)">Do something!</a>

这会将this正确地转移到函数中。