CHtml Link为父级返回null

时间:2013-12-24 14:21:22

标签: javascript php jquery yii yii-components

我使用Chtml :: Link创建了一个url:

CHtml::link("Remove", '#', array('class' => 'delete')))

现在,当用户点击它时,我发送一个像这样的ajax请求:

$('.delete').click(function(e) {
    e.preventDefault();
    $.ajax({
      url:'" . $this->createUrl('//shop/shoppingCart/delete') . "',
      type : 'GET',
      data: {id: $position},
      success: function(result) {
         console.log($(this).parent());
      },
     });
});

它始终记录“undefined”,但链接位于td内 我想要做的是删除包含链接的行。任何新的方法也是受欢迎的。请帮忙!

1 个答案:

答案 0 :(得分:3)

ajax调用的success函数内的

this是另一个this而不是click函数中的this。因此,您可能找不到this的父级。

我猜你是在试图找到更新html的元素的父元素吗?为什么不使用Chtml :: ajaxLink,然后可以使用update属性:

Chtml::ajaxLink(
    'Remove',
    $this->createUrl('//shop/shoppingCart/delete'),
    array(
        'update' => "$('.delete').parent()", // or anything like this
        'data' => array(
            'id' => $position,
        )
    ),
    array(
        'class' => 'delete'
    )
)