Foros del Web » Programando para Internet » Jquery »

[jquery] No puedo cambiar el html de un elemento

Estas en el tema de [jquery] No puedo cambiar el html de un elemento en el foro de Jquery en Foros del Web. Hola Tengo este codigo que hace lo siguiente: al pulsar sobre el enlace 'Modificar' se ejecuta un plugin el jQuery: "Colorbox" (es una ventana modal). ...
  #1 (permalink)  
Antiguo 08/07/2010, 14:16
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
[jquery] No puedo cambiar el html de un elemento

Hola

Tengo este codigo que hace lo siguiente:
al pulsar sobre el enlace 'Modificar' se ejecuta un plugin el jQuery: "Colorbox" (es una ventana modal). El plugin permite determinar la función onClose (que se ejecuta cuando se cierra dicha ventana). El plugin funciona bien. En la función onClose hago una consulta Ajax que retorna una 'respuesta'. Necesito que el html del elemento html <span class="la_respuesta"> tome el valor de 'respuesta'. Generalmente con localizar el elemento de esta forma:
Código:
$(this).parent().find('.la_respuesta').html(respuesta);
funcionaría bien, pero supongo que el plugin hace que no funcione.



El código html real es:
Código HTML:
<div>

<a class="modificar">Modificar</a>

<span class="la_respuesta">AQUI DEBERIA APARECER EL VALOR DE: respuesta</span>

</div> 
y el js:
Código:
	
$(".modificar").colorbox({ onClosed: function(){

  var id = 5;			 
  $.post('respuestas.php' , {id :id} , function(respuesta){

    alert(respuesta); // MUESTRA CORRECTAMENTE respuesta
    $(this).parent().find('.la_respuesta').html(respuesta); // ESTO NO FUNCIONA
    $(this).parent().find('.la_respuesta').html('algun texto'); // ESTO NO FUNCIONA
		 
  });
  $(this).parent().find('.opinion').html('algun texto'); // ESTO SI FUNCIONA

}});
Se que el problema es que $(this) ya no apunta a .modificar pero no se como solucionarlo.

Que puedo hacer. (si es que alguien entiendo lo que quiero)?
  #2 (permalink)  
Antiguo 08/07/2010, 15:50
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: [jquery] No puedo cambiar el html de un elemento

Podes usar siblings()

Pero antes fijate en un debugger cual es la verdadera ruta hasta .la_respuesta, porque cuando un plugin agrega cosas al DOM es facil perderla.
  #3 (permalink)  
Antiguo 08/07/2010, 16:00
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: [jquery] No puedo cambiar el html de un elemento

guarda una referencia en una variable y usala en el post

Código Javascript:
Ver original
  1. $(".modificar").colorbox({ onClosed: function(){
  2.     var res = $(this).parent().find('.la_respuesta');


Código Javascript:
Ver original
  1. $.post('respuestas.php' , {id :id} , function(respuesta){
  2.     res.html(respuesta);
  #4 (permalink)  
Antiguo 09/07/2010, 00:54
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Respuesta: [jquery] No puedo cambiar el html de un elemento

Cita:
Iniciado por Dany_s Ver Mensaje
guarda una referencia en una variable y usala en el post

Código Javascript:
Ver original
  1. $(".modificar").colorbox({ onClosed: function(){
  2.     var res = $(this).parent().find('.la_respuesta');


Código Javascript:
Ver original
  1. $.post('respuestas.php' , {id :id} , function(respuesta){
  2.     res.html(respuesta);
ha funcionado! Gracias

Etiquetas: html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:24.