Ver Mensaje Individual
  #8 (permalink)  
Antiguo 08/08/2008, 11:26
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: Consulta...ceros en campo de texto numerico

Casi lo tienes hoberwilly, pero lee mis consejos:

Cita:
Iniciado por derkeNuke
Dos condiciones de que No sea un número, unidas con OR (||) porque cualquiera nos vale para que No sea un número
Usa paréntesis para saber lo que se ejecuta antes en la condicional, sino puede ser muy confuso:

Código PHP:
<script type="text/javascript">
function 
LP_data(campo){
    var 
key=window.event.keyCode;
    if ( (
key<48 || key>57) || (key==48 && campo.value.length==0) ){
        
window.event.keyCode=0;
    }

</script>
<form>
    <input name="cantidad" type="text" id="cantidad" onkeypress="LP_data(this)" />
    <input type="submit" />
</form> 
Ahora te faltaría implementarlo para que sea estándar y funcione en todos los navegadores, no sólo en IE.

Si te ayuda puedes utilizar variables para escribir condicionales complejas:
Código PHP:
function LP_data(campo){
var 
key=window.event.keyCode;
    var 
esNumero = (key<48 || key>57);
    var 
EsPrimeroYesCero = (key==48 && campo.value.length==0);
    if ( 
esNumero || EsPrimeroYesCero ){
        
window.event.keyCode=0;
    }


Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.