Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/01/2010, 06:10
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años
Puntos: 126
Respuesta: Contar lineas y caracteres de textarea en javascript

Hola

Esto sería un início

Código Javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <script type="text/javascript">
  6. var nuevaFila = {
  7.  
  8. Evento: function (elemento,nomevento,funcion) {
  9.   if (elemento.attachEvent)
  10.   {
  11.       var f=function(){
  12.         funcion.call(elemento,window.event);
  13.     }
  14.     elemento.attachEvent('on'+nomevento,f);
  15.     return true;
  16.   }
  17.   else  
  18.     if (elemento.addEventListener)
  19.     {
  20.       elemento.addEventListener(nomevento,funcion,false);
  21.       return true;
  22.     }
  23.     else
  24.       return false;
  25. },
  26.  
  27.  
  28.  
  29. init: function(){
  30. var elem = document.getElementById("txt");
  31.         nuevaFila.Evento(elem, 'keyup', nuevaFila.CreaFila);
  32.     },
  33.  
  34.  
  35. CreaFila: function (ev) {
  36. var num_caracteresIrreales;
  37. var num_caracteresReales;
  38. var keyCode = document.layers ? ev.which : document.all ? event.keyCode : document.getElementById ? ev.keyCode : 0;
  39. var elem = document.getElementById("txt");
  40. num_caracteresIrreales = elem.rows * 26;
  41. num_caracteresReales = elem.value.length;
  42. document.getElementById("irr").innerHTML = num_caracteresIrreales;
  43. document.getElementById("real").innerHTML = num_caracteresReales;
  44.  
  45. if (keyCode == 8) {
  46. if ((num_caracteresReales < (num_caracteresIrreales-26)) && (elem.rows >=2)) {
  47. elem.rows-= 1;
  48. }
  49.  
  50. } else if (num_caracteresReales == num_caracteresIrreales) {
  51. elem.rows+= 1;
  52.  
  53. } else if (keyCode == 13) {
  54. elem.rows+= 1;
  55. num_caracteresIrreales = 26;
  56. num_caracteresReales = 0;
  57. }
  58. }
  59. }
  60. nuevaFila.Evento(window, 'load', nuevaFila.init);
  61. </script>
  62. </head>
  63. <body>
  64. <textarea name="txt" id="txt" cols="30" rows="1" style="overflow:hidden;"></textarea>
  65. Salto linea <span id="irr">0</span> Caracteres <span id="real">0</span>
  66. </body>
  67. </html>

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;" />