JQuery AJAX данные не печатаются в родительском элементе

Моя проблема в том, что когда я пытаюсь показать значение с помощью вызова ajax, оно показывает значение "универсальному" классу, но когда я пытаюсь показать его в родительской строке, оно ничего не показывает. вот мой код ajax

$.ajax({
    type: 'POST',
    url: 'http://localhost/medical/index.php/purchase/test',
    data: 'data=' + pid,
    success: function() {
        $.get('http://localhost/medical/index.php/purchase/test', function(data) {
            $(this).parents('tr').find('.generic').html(data); // doesn't show the value
            $( ".generic" ).html(); // this show the value but in all table row
    });
}});

Заранее спасибо

1 ответ

Решение

Проблема называется областью действия. this в контексте анонимная функция означает нечто иное, чем внешнее. Вы можете сделать это так

var that = this;
$.ajax({
    ...
    success: function() {
        $.get(..., function(data) {
            $(that).parents('tr').find('.generic').html(data);
        });
    }
});
Другие вопросы по тегам