Foros del Web » Programando para Internet » Javascript »

Evitar espacios en textbox

Estas en el tema de Evitar espacios en textbox en el foro de Javascript en Foros del Web. Hola a todos... Mi pregunta supongo que es un poco sencilla, pero no tengo muchos conocimientos en javascript Necesito un textbox en el cual no ...
  #1 (permalink)  
Antiguo 27/03/2008, 17:25
Avatar de lrunge  
Fecha de Ingreso: agosto-2005
Ubicación: En algun lugar de Caracas
Mensajes: 165
Antigüedad: 18 años, 9 meses
Puntos: 4
Pregunta Evitar espacios en textbox

Hola a todos...

Mi pregunta supongo que es un poco sencilla, pero no tengo muchos conocimientos en javascript

Necesito un textbox en el cual no se puedan escribir espacios...

Por ejm. si un usuario quiere escribir "foros del web", se omitan automaticamente los espacios, asi si el usuario quiere escribirlo, los espacios se eliminen al pulsarlos y solo aparezca "forosdelweb"

Gracias al los que puedan ayudarme...

Saludos
__________________
"La sencillez de una respuesta, sera inversamente proporcional a su explicacion" Luis Runge
  #2 (permalink)  
Antiguo 27/03/2008, 19:39
 
Fecha de Ingreso: diciembre-2007
Ubicación: Argentina
Mensajes: 151
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: Evitar espacios en textbox

Te paso un ejemplo sencillo para lo que necesitas:

Código:
<html>
<head>
</head>

<body>

<script language="javascript">

function aaa(campo, event) {

CadenaaReemplazar = " ";
CadenaReemplazo = "";
CadenaTexto = campo.value;
CadenaTextoNueva = CadenaTexto.split(CadenaaReemplazar).join(CadenaReemplazo);
campo.value = CadenaTextoNueva;

}

</script>

<input onkeyup="aaa(this, event)" type="text">

</body>
</html>

Espero que sirva
Saludos
  #3 (permalink)  
Antiguo 28/03/2008, 10:04
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Evitar espacios en textbox

Hola lrunge

Un poco más sencillo:

Código PHP:
<html>
<
head>
<
script type="text/javascript">
function 
validar(e) {
  
tecla = (document.all) ? e.keyCode e.which;
  return 
tecla!=32;
}
</script>
</head>
<body>
<input onkeypress="return validar(event)" type="text">
</body>
</html> 
Saludos,
  #4 (permalink)  
Antiguo 28/03/2008, 17:04
 
Fecha de Ingreso: diciembre-2007
Ubicación: Argentina
Mensajes: 151
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: Evitar espacios en textbox

El ejempo de JavierB funciona bien pero si se copia un texto con espacios y se pega en el cuadro de texto los espacios no se eliminan por lo que se podrá enviar el formulario (si ese e el caso) con espacios.

En cambio el otro ejemplo elimina todo espacio en la cadena de texto sin importar que método de escritura se utilice en el cuadro de texto

Saludos
  #5 (permalink)  
Antiguo 29/03/2008, 04:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Evitar espacios en textbox

Hola codigojavascript

Tienes razón. Esto sirve para recordar que no hay que fiarse demasiado de las validaciones en JavaScript, siempre (como decía el maestro Cluster) hay que volver a validar en el servidor.

Saludos,
  #6 (permalink)  
Antiguo 29/03/2008, 09:56
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Evitar espacios en textbox

Bueno, igual lo dejamos así:

Código PHP:
<input onkeyup="this.value=this.value.replace(/ /g,'');" type="text"
Aunque sí que es verdad que habría que volver a hacerlo en el servidor porque el javascript puede estar desactivado (o pueden mandarnos el form a nuestro servidor desde una página personalizada...)

Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 21:52.