Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Contar líneas en un textarea sin incluir lineas vacias

Estas en el tema de Contar líneas en un textarea sin incluir lineas vacias en el foro de Javascript en Foros del Web. hola y gracias por la ayuda, tengo este código que mediante un boton cuantas las lineas del área de texto , lo que necesito es ...
  #1 (permalink)  
Antiguo 27/05/2015, 05:45
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Contar líneas en un textarea sin incluir lineas vacias

hola y gracias por la ayuda, tengo este código que mediante un boton cuantas las lineas del área de texto , lo que necesito es contar la lineas sin necesidad de usar un botón si tengo una lista nombre copio y pego en el area texto y automáticamente salga el resultado en el input text de cuantas lineas tengo y si es posible que no me considere las lineas en blanco

saludos


<script language="javascript" type="text/javascript">
function contar_lineas(texto) {
var lineas = 1;
for (var j = 0; j < texto.length; j++) {
if (texto.charAt(j) == "\n") {
lineas++;
}
}
document.luis.resultado.value = lineas;
return lineas;
}
</script>

</head>

<body>
<form name="luis" action="" method="get">
<textarea name="texto" id="texto" rows="7" cols="26">hola luis

</textarea>
<input name="resultado" id="resultado" type="text" size="12" style="text-align: center" >
<input name="boton" id="boton" type="button" value="Contar Lineas" onclick="contar_lineas('' + document.luis.texto.value)">
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 27/05/2015, 08:28
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

Creo que te lo estás complicando:

Código Javascript:
Ver original
  1. function contar(str){
  2.   return str.split(/\n+/).length;
  3. }

Última edición por PHPeros; 27/05/2015 a las 08:43
  #3 (permalink)  
Antiguo 28/05/2015, 05:31
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

lee a partir de aquí
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #4 (permalink)  
Antiguo 01/06/2015, 04:43
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

gracias por la ayuda isabel encontré el código que es mas o menos lo que estaba buscando pero a hora estoy tratando que se muestre el resultado de las lineas en un input type="number" y no lo esta mostrando.



<script type="text/javascript">
function copypasteRaton() {

setTimeout(mostrarFilas, 0);
}

function mostrarFilas() {
var texto = document.getElementById("area").value;
var lines = document.getElementById("lineas").value = lines;

if (texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi) == null) { lines.innerHTML = 1; return; }

lines.innerHTML = texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi).length+1;
}
</script>
</head>

<body>
<h1>Elementos repetidos..</h1>
<textarea id="area" onkeyup="mostrarFilas()" onpaste="copypasteRaton()"></textarea>
<input type="number" name="resultado" id="lineas" size="12" style="text-align: center" >
  #5 (permalink)  
Antiguo 01/06/2015, 07:46
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

¿Sabes para qué sirve innerHTML?
  #6 (permalink)  
Antiguo 02/06/2015, 06:18
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

así
Cita:
document.gerElementById('lineas').value = texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi).length+1;
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #7 (permalink)  
Antiguo 02/06/2015, 08:59
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

gracias Isabel me echo de mucha ayuda, solo tengo un pequeño problema al contar las lineas la primera linea no sale nada en el contador recién en la segunda linea comienza a salir el contador saludos
  #8 (permalink)  
Antiguo 02/06/2015, 09:19
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

<script type="text/javascript">
function copypasteRaton() {

setTimeout(mostrarFilas, 0);
}

function mostrarFilas() {
var texto = document.getElementById("area").value;
document.getElementById('lineas').value = texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi).length+1;

}

</script>
</head>

<body>
<h1>Elementos repetidos..</h1>
<textarea id="area" onkeyup="mostrarFilas()" onpaste="copypasteRaton()"></textarea>
<input type="number" name="resultado" id="lineas" size="12" style="text-align: center" >
  #9 (permalink)  
Antiguo 02/06/2015, 09:42
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

¿Por qué has omitido la condicional ?
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #10 (permalink)  
Antiguo 02/06/2015, 10:50
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

porque igual funciona con condicional y sin el solo tengo este problema el contador de lineas sale aparir de la segunda linea.

saludos

Última edición por freddi355; 02/06/2015 a las 13:54
  #11 (permalink)  
Antiguo 03/06/2015, 06:14
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

Cita:
Iniciado por freddi355 Ver Mensaje
porque igual funciona con condicional y sin el solo tengo este problema el contador de lineas sale aparir de la segunda linea.

saludos
estás totalmente seguro de ello???

prueba ahora
Código:
function copypasteRaton() {

setTimeout(mostrarFilas, 0);
}

function mostrarFilas() {
var texto = document.getElementById("area").value;
var lines = document.getElementById("lineas");//.value = lines;

if (texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi) == null) { lines.value = 1; return; }

lines.value = texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi).length+1;
}
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #12 (permalink)  
Antiguo 03/06/2015, 16:09
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

Muchas Gracias Isabel por la ayuda

Última edición por freddi355; 03/06/2015 a las 16:44
  #13 (permalink)  
Antiguo 03/06/2015, 18:13
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

todo bien hasta hora pero no me di cuenta que tenia esta función onkeyup="javascript:this.value=this.value.toUpperC ase() en mi textarea que graba en mayúscula todo lo que esta en el textarea y al poner esta otra función onkeyup="mostrarFilas()" deja de funcionar y no convierte a mayúscula
  #14 (permalink)  
Antiguo 03/06/2015, 18:26
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

disculpa ya lo Resolví con el onblur="this.value=this.value.toUpperCase()
  #15 (permalink)  
Antiguo 09/06/2015, 04:49
 
Fecha de Ingreso: mayo-2015
Mensajes: 18
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Contar líneas en un textarea sin incluir lineas vacias

como seria si solo quiero que se coloquen letras de la a a la z en el textarea o que no incluya numeros solo que sean letras gracias por la ayuda saludos

Etiquetas: html, incluir, input, lineas, textarea, vacias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:28.