Foros del Web » Programando para Internet » Javascript »

Excluir caracteres del conteo de caracteres

Estas en el tema de Excluir caracteres del conteo de caracteres en el foro de Javascript en Foros del Web. Hola, tengo un script para contar los caracteres escritos en un textarea, es el siguiente: Código HTML: <script language= "JavaScript" > // Limita los caracteres ...
  #1 (permalink)  
Antiguo 15/12/2008, 20:54
 
Fecha de Ingreso: agosto-2007
Mensajes: 79
Antigüedad: 16 años, 8 meses
Puntos: 0
Pregunta Excluir caracteres del conteo de caracteres

Hola, tengo un script para contar los caracteres escritos en un textarea, es el siguiente:
Código HTML:
<script language="JavaScript">
// Limita los caracteres a introducir en un TextArea y cuenta los que quedan para llegar al final. En este caso, son 200. Para modificar el tamaño, solo hay que cambiar este valor en 'limite(this,200)' y en 'value=200' por el deseado.

function limite(que,cuanto)
{
var v=que.value
if(v.length>cuanto)
  que.value=v.substring(0,cuanto)
else
  document.reduce.cont.value=cuanto-v.length
}
</script> 
Código HTML:
<textarea onKeyDown="limite(this,200)"  onKeyUp="limite(this,200)" name="registro" rows=15 cols=45 ></textarea>
<input name="cont" type="text" size="3" value="200" readonly> 
Hasta aqui todo funciona perfecto. Lo que necesito es que NO me cuente los caracteres que esten dentro de corchetes [ ]... es decir. que me cuente todo lo que escriba o pegue desde el portapapeles pero lo que esta dentro de [ ] ejem:

Código HTML:
[hola]
Que no me lo cuente y obviamente no lo debite de los caracteres restantes.. Alguien puede ayudarme? si es posible en este mismo codigo..

Gracias.
  #2 (permalink)  
Antiguo 15/12/2008, 23:07
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Excluir caracteres del conteo de caracteres

Probá así:
Código:
function limite(que,cuanto)
{
var pat=/\[.*?\]/g;
var v, v2;
v2=v=que.value;
v2=v2.replace(pat,'');
if(v2.length>cuanto)
  que.value=v.substring(0,cuanto)
else
  document.reduce.cont.value=cuanto-v2.length
}

Última edición por Panino5001; 16/12/2008 a las 04:46
  #3 (permalink)  
Antiguo 15/12/2008, 23:25
 
Fecha de Ingreso: agosto-2007
Mensajes: 79
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Excluir caracteres del conteo de caracteres

Cita:
Iniciado por Panino5001 Ver Mensaje
Probá así:
Código PHP:
function limite(que,cuanto)
{
var 
pat=/[.*?]/g;
var 
vv2;
v2=v=que.value;
v2=v2.replace(pat,'');
if(
v2.length>cuanto)
  
que.value=v.substring(0,cuanto)
else
  
document.reduce.cont.value=cuanto-v2.length

Hola, ya lo probe funciona!!
Pero me cuenta 2 caracteres correspondientes a los corchetes [ ].. No quiero que cuente tampoco los [ ] .. alguna idea? te agradezco mucho tu ayuda.

Última edición por delorenzis; 15/12/2008 a las 23:34
  #4 (permalink)  
Antiguo 16/12/2008, 04:48
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Excluir caracteres del conteo de caracteres

Me olvidé de que las etiquetas del bbecode de php borran las contrabarras. Ahí edité lo anterior en etiquetas code. Probá de nuevo.
  #5 (permalink)  
Antiguo 16/12/2008, 10:32
 
Fecha de Ingreso: agosto-2007
Mensajes: 79
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Excluir caracteres del conteo de caracteres

Cita:
Iniciado por Panino5001 Ver Mensaje
Me olvidé de que las etiquetas del bbecode de php borran las contrabarras. Ahí edité lo anterior en etiquetas code. Probá de nuevo.
Funciona a la perfección! de verdad MUCHISIMAS GRACIAS por tu ayuda.
Ahora para otra pagina necesito que los valores: [dato1] resten X cantidad de caracteres.

Es decir, escribo [dato1] y no me resta ningun caracter. Esta perfecto para un proyecto. Pero para otra cosa ahora necesito que [dato1] me reste por decir 10 caracteres, [dato2] me reste 15 caracteres... y asi sucesivamente..

Crees que me puedas echar una mano con esto? si puedes no edites la funcion anterior ya que es otro ejemplo y podría ayudar tambien a mucha gente que lo necesite.

Gracias.
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 07:08.