jQuery $(this)传递函数

时间:2015-08-06 15:49:42

标签: jquery

我有两个功能。第一个函数是click事件,第二个函数在第一个函数中被调用。是否可以在第二个函数中使用$(this)?如果没有,是否有可能以另一种方式获得$(这)?

例如:

$('#table').find('.button').click(function() {
   var results = someResult;
   getSomethingElse();
});
function getSomethingElse(){
   **$(this).find('#table').append(results);**
}

2 个答案:

答案 0 :(得分:0)

如果您仍想使用上一个函数实例中的this,则需要将其传递给第二个函数。

$('#table').find('.button').click(function() {
   var results = someResult;
   getSomethingElse($(this));
});
function getSomethingElse(ele){
   ele.find('#table').append(results);
}

答案 1 :(得分:0)

不能像你描述的那样简单地在第二个函数中使用$(this),但你仍然可以用另一种方式使用它:

$('#table').find('.button').click(function() {
    var results = someResult;
    getSomethingElse($(this), results);
});

function getSomethingElse(that, results){
    that.find('#table').append(results);
}

您必须将$(this)results传递给第二个函数。如果您还没有传递results,则无法使用它。