Problema al seleccionar un padre con jQuery.ajax

Muy buenas, estoy realizando una web que tiene como característica un enlace vía ajax que devuelve del servidor un json que debe reemplazar parte del contenido del texto de ese enlace ajax. El problema es que ni nen el método complete ni en el de success he conseguido acceder al contenedor padre (o al menos, averiguar el ID del selector que dispara el ajax). El código jquery es el siguiente:

Código PHP:


$this->widget('bootstrap.widgets.BootButton', array(

				'label' => 'xxx',

				'encodeLabel' => false,

				'type' => 'success',

				'size' => 'mini',

				'buttonType' => 'ajaxButton',

				'url' => Yii::app()->createUrl('publicaciones/votar', array('id' => $publicacion->id)),

				'ajaxOptions' => array(

					'dataType' => 'json',

					'beforeSend' => 'js:function(){  $(this).addClass("disabled"); }',

					'success' => 'js:function(data){ if(data.hasOwnProperty("votos")) { $(this).closest("div.publicacion-footer").text("Votos("+data.votos+")"); } }'

				),

				'htmlOptions' => array(

					'id' => 'publicacionCas'.$publicacion->id,

					'class' => 'btn-espacio'),

			));

Y el HTML es el siguiente:

Código HTML:


<div class="publicacion-footer">

    <div class="publicacion-footer-derecha">

        <button>xxx</button>

        <button>yyy</button>

    </div>

    <div class="publicacion-footer-izquierda">

        <button name="yt3" type="button" id="yt3">zzzz</button>

    </div>

</div>

Bien, use console.log de $(this) y $(this).closest("div.publicacion-footer") para ver si me devolvían algo, el segundo no devuelve nada y el primero devuelve un objeto con la siguiente información:

Código Javascript:


accepts: Object

async: true

cache: false

complete: function (data){ console.log($(this)); console.log($(this).closest("div.publicacion-footer")); $(this).closest("div.publicacion-footer").replaceWith(data); }

contentType: "application/x-www-form-urlencoded"

contents: Object

converters: Object

crossDomain: false

dataTypes: Array[2]

flatOptions: Object

global: true

hasContent: false

isLocal: false

jsonp: "callback"

jsonpCallback: function () {

processData: true

responseFields: Object

type: "GET"

url: "/cod/index.php/publicaciones/favorito/2?_=1340812969363"

xhr: function createStandardXHR() {

__proto__: Object

Me gustaría saber si a través del objeto $(this) puedo acceder al padre con clase "publicacion-footer", o sí hay alguna manera a través de jQuery de acceder, estuve leyendo la documentación de jQuery.ajax pero no he conseguido averiguar nada en claro. Espero que alguien pueda darme algún atisbo de luz a este problema.

Probé dentro del success este código: $(this).parents(‘div:eq(0)’).html(data.votos), que es el primer div que tiene encima, sin que funcionase (he probado esto en otros scripts con éxito).

Hay una duda que me corroe de base al script que me genera Yii es que en antes del jQuery.ajax empieza con $(‘body’).on(‘click’,’#yt3’,function(){ … } y me temo que al hacer $(this) me esta devolviendo el body en vez del selector…

Si alguien me puede echar una mano se lo agradecería.