Ver Mensaje Individual
  #6 (permalink)  
Antiguo 26/09/2011, 10:55
Avatar de freesoftwarrior
freesoftwarrior
 
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: Mensaje o Alerta según número

dasa lo que te dice KoswiDigital es correcto: si no conoces nada del lenguaje te va a ser bien complicado el poder manejarlo o modificarlo. Tienes tarea mi estimado, y es leer sobre el tema. Afortunadamente documentación hay a montón. Primero empieza por lo básico y luego curiosea los posts en este foro, sería un forma de ir aprendiendo poco a poco.

El código que buscas creo que sería algo como esto

Cita:
<html>
<head>
<title>Untitled</title>
</head>

<script>
var nav4 = window.Event ? true : false; //Sólo números
function acceptNum(evt)
{
// Backspace = 8, Enter = 13, '0' = 48, '9' = 57
var key = nav4 ? evt.which : evt.keyCode;
return (key <= 13 || (key >= 48 && key <= 57));
}

function validar()
{
numero = document.getElementById("dato").value;
if (numero>=23)
{alert("Cantidad alta");}
if (numero<=8)
{alert("Cantidad baja");}
}
</script>

<body>

<form>
<input type="text" name="dato" id="dato" size="10" onKeyPress="return acceptNum(event);" onChange="validar();">
</form>

</body>
</html>
Te explico un poco.

Para validar datos debes utilizar eventos. Los eventos son "acciones" que se dan con distintos elementos, como links, campos de formulario, etc. Estos eventos pueden ser cuando el cursor esta sobre "el objeto", cuando esta fuera, cuando hay cambios, cuando se pierde el foco (esto quiere decir cuando se deja de "observar" un objeto).

En este caso vamos a utilizar 2 eventos: onKeyPress que evalúa conforme vas presionando una tecla en el campo en cuestión (en el ejemplo el campo se llama "dato") y el evento onChange que evalúa cuando hay un cambio, y en este caso es cuando se ha ingresado un dato y luego se presiona enter o la tecla tab (puede ser un nuevo dato o la modificación de uno).

El primer evento llama a la función acceptNum que le esta pasando, entre paréntesis, un dato que representa al evento mismo (esto lo tendrás que investigar por tu cuenta, es parte de la tarea asignada mi estimado jejeje). Esta función hace que SÓLO se ingresen números, no otros caracteres como letras o caracteres especiales.

El segundo evento llama a una función que valida el dato ingresado.

La primera línea de esta función "captura" el dato. Hay una propiedad llamada getElementByID que traducido significaría "toma el elemento por su ID". Si te fijas en el formulario, el campo se llama "dato" (name='dato') pero su id TAMBIÉN se llama "dato" (aunque podría llamarse de otra forma si así gustas, no tienen que ser el mismo nombre para ambos). Esta es una forma muy eficiente de "capturar" un dato. Eficiente y sencilla.

Una vez que tienes el valor (por eso la primera línea de la función termina en "value"), haces las comparaciones: si es mayor o igual a 23 y si es menor o igual a 8, y en alert pones el mensaje que quieres que se muestre.

Espero haberte ayudado en algo

Un saludo desde Lima, Perú