Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde pessoal. Alguém poderia me dizer como faz para quando o usuário clicar num texto, apareça um input para que ele possa editá-lo?
Desde já agradeço a atenção. ;)
A minha primeira intenção foi criar um DIV com um determinado texto, tendo nesse DIV o evento onClick responsável por chamar uma função que substituísse o texto por uma textarea e um botão para confirmação. Entretanto, o DIV continuava com o evendo onClick, ou seja, quando o usuário clicava no texto para editá-lo, a textarea aparecia normalmente, mas assim que o mouse era clicado sobre essa textarea, o evento era disparado e a função era chamada novamente.
Bom, para corrigir isso, tive de criar uma textarea para cada bloco de texto (como não poderia deixar de ser, caso a intenção do usuário seja enviar esses textos para um banco de dados, por exemplo). Bastou então apenas manipular o estilo com "display: block/none" que funcionou do jeito que eu queria.
Resumindo: matei dois coelhos com uma "caixa d'água" só (caixa d'água é ótimo! kkk :-P). Eu então "se" superei no código e o que eu apenas havia visto em AJAX (eu odeio AJAX), agora consegui fazer com JavaScript puro! O código não é nada demais, mas eu gostei de tê-lo criado pois irei usá-lo a partir de agora nos painéis de controle dos sites que faço!
Segue o código: