Как передать элемент this в результат getJSON? - PullRequest
2 голосов
/ 11 июля 2010

Я хочу сделать следующее ...

    $('.showcomments').click(function()
    {
        $(this).parent().hide();
        jQuery.getJSON('comments.json',function($data)
        {
            $(this).parent().append($data['value']) 
                    //this is meant to be the instance of 
                    //$('.showcomments') that has been clicked
        });
    });

проблема в том, что обратный вызов getJSON, конечно, не унаследовал этот элемент ... но как мне сделать то, что я намереваюсь?

1 Ответ

7 голосов
/ 11 июля 2010

Ссылка на него в переменной:

$('.showcomments').click(function()
{
    var $th = $(this);   // References the clicked .showcomments
    $th.parent().hide();
    jQuery.getJSON('comments.json',function($data)
    {
        $th.parent().append($data['value']); // will reference the correct element
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...