Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/10/2012, 11:41
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Cambiar el label por input tiempo real click

Vamos a modificar un poco lo de @dalttony, para que funcione correctamente.
Ya que estamos con jQuery vamos a evitarnos eso de utilizar el innecesario evento onclick en el tag label llamando a una función, que lo único que consigue es duplicar el efecto


Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2.    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
  7. <script type="text/javascript">
  8. //<![CDATA[
  9. $(document).ready(function(){
  10. var input="<input type='text' title='ingrese el nuevo texto y presione enter' id='p'\/>"//agregamos el el cuadro de texto
  11.            var label ="<label id='gu'>Se ha guardado lo que ha escrito<\/label>" //el label que indica que se guardo
  12.            //evento del click del
  13.            $("#cambio").click(function(){
  14.                
  15.                $("#"+this.id).empty();//borramos el label que dice prueba
  16.                $("#cuadro").prepend(input);//agrgamos lca caja
  17.                var inp=$("#p")//obtenemos el selector
  18.                inp.keydown(function(e){//evento
  19.                    var code= e.keyCode;//obtenemos el codigo del enter
  20.                    if (code==13)
  21.                    {
  22.                            $("#cuadro").prepend(label);//agregamos
  23.                            $("#gu").css("background-color","#FF0");
  24.                      //      alert($("#gu").text)
  25.                            $("#"+this.id).remove();//quitamos el cuadro
  26.                    }
  27.                }
  28.                );
  29.            });
  30.  
  31.            });
  32. //]]>
  33. </head>
  34. <div id="cuadro"><label id="cambio" style="cursor: pointer; color: red;" title="Click aquí para cambiar">Prueba</label> de cambio de texto<br /></div>
  35. </body>
  36. </html>
Demo
http://foros.emprear.com/jquerye/labelxinput.html

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.