Ver Mensaje Individual
  #6 (permalink)  
Antiguo 25/09/2011, 10:58
Avatar de KoswiDigital
KoswiDigital
 
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 13 años
Puntos: 37
Respuesta: Convertir texto a input.

Como te decía es cuestión de no utilizar remove(). En lugar de ello, podríamos utilizar hide() para el span y remove para el input (porque sólo lo necesitamos para modificar el span).

El resultado, modificando el primer código que te puse, sería el siguiente:

Código Javascript:
Ver original
  1. $(document).ready(function()
  2. {
  3.     $('.mispan').click(function()
  4.     {
  5.         var mispan = $(this);
  6.     var data = mispan.text();
  7.     mispan.hide();
  8.        
  9.     $('<input class="miedit" type="text" value="'+data+'" />').insertBefore(mispan).focus();
  10.        
  11.         $('.miedit').blur(function()
  12.         {
  13.             var data = $(this).val();
  14.             $(this).remove();
  15.            
  16.             mispan.text(data).show();
  17.         });
  18.     });
  19. });

Código HTML:
Ver original
  1. <span class="mispan">hola mundo</span>
  2. <br />
  3. <span class="mispan">adiós mundo</span>


Ahora, en medio pues haz lo que tengas que hacer con ajax y guarda y recoge los datos convenientemente. Si lo de utilizar un botón no te convence, esta es la solución ^^


Un saludo!
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.