Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/10/2009, 12:55
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: textarea extensible

Hola

Prueba con esto

Código javascript:
Ver original
  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. var nuevaFila = {
  5.  
  6. Evento: function (elemento,nomevento,funcion) {
  7.   if (elemento.attachEvent)
  8.   {
  9.       var f=function(){
  10.         funcion.call(elemento,window.event);
  11.     }
  12.     elemento.attachEvent('on'+nomevento,f);
  13.     return true;
  14.   }
  15.   else  
  16.     if (elemento.addEventListener)
  17.     {
  18.       elemento.addEventListener(nomevento,funcion,false);
  19.       return true;
  20.     }
  21.     else
  22.       return false;
  23. },
  24.  
  25.  
  26.  
  27. init: function(){
  28. var elem = document.getElementById("txt");
  29.         nuevaFila.Evento(elem, 'keyup', nuevaFila.CreaFila);
  30.     },
  31.  
  32.  
  33. CreaFila: function (ev) {
  34. var keyCode = document.layers ? ev.which : document.all ? event.keyCode : document.getElementById ? ev.keyCode : 0;
  35. var elem = document.getElementById("txt");
  36. var caracteres = elem.rows * 10;
  37.  
  38. if (keyCode == 8) {
  39. if (elem.value.length < (caracteres-10)) {
  40. elem.rows-= 1
  41. }
  42. }
  43. else if (elem.value.length < 9) {
  44. elem.rows = 1
  45. } else if (elem.value.length == caracteres) {
  46. elem.rows+= 1
  47. }
  48. }
  49. }
  50. nuevaFila.Evento(window, 'load', nuevaFila.init);
  51. </script>
  52. </head>
  53. <body>
  54. <textarea name="txt" id="txt" cols="10" rows="1"></textarea>
  55. </body>
  56. <html>

En cuanto al salto de linea no se me ocurre nada, de hecho no se si se puede hacer lo que pretendes

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 09/10/2009 a las 13:31 Razón: Al quitar caracteres, quitar filas