Validaciones

Reciba un cordial saludo mi nombre es Geovanna
Actualmente me encuentro realizando la tesis en Lotus Notes pero puedo manejar LotusScript, java, Javascript como lenguajes de programación, quisiera que por favor me ayuden en lo siguiente:
Que por favor me ayuden enviándome validaciones del ingreso de datos.
Como es:
Campo tipo texto(que el usuario únicamente ingrese datos)
Campo tipo numérico(que el usuario únicamente ingrese números)
Campo año:(que el usuario ingrese un año válido)
Campo tipo cédula(que el usuario ingrese unicamente 10 dígitos)
Respuesta
1
Lamento no poder ayudarte en la implementación de JavaScript en el Lotus Notes, aunque lo uso pero como herramienta corporativa en mi trabajo.

1 respuesta más de otro experto

Respuesta
1
No me das detalles sobre cómo deben ser las validaciones, así que puede que las que te dé no te sirvan. Por ejemplo: un año debe tener cuatro dígitos (¿o dos?), pero, ¿cuáles? ¿Entre el 1900 y el 2100? ¿Entre el 1930 y el año actual...?
El campo de texto no puede pasar por ninguna validación, porque... ¡Todas las entradas a un formulario son texto! No hay forma de "ingresar mal los datos", porque cualquier combinación de caracteres que se introduzca en una caja de texto será una cadena de texto válida.
Hecha esta salvedad:
// validación de año, entre 1900 y 2001
function validaAnno(txt) {
var annoMin=1900;
var annoMax=2001;
var annoInput=0,
var re=/^\d{4}$/;
if (re.test(txt.value)) {
annoInput=parseInt(txt.value);
if (annoInput>=annoMin && annoInput<=annoMax) return true;
}
txt.value='';
alert('Año incorrecto: debe ser un número entre '+annoMin+' y '+annoMax+'.');
txt.focus();
return false;
}
// validación de fecha, formato dd/mm/aaaa (se requiere otra validación
// si el formato es distinto, como dd-mm-aaaa, o mm-dd-aaaa...)
function validaFecha(txt) {
var arrayDiasMes=[31,28,31,30,31,30,31,31,30,31,30,31];
var re=/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/;
if (re.test(txt.value)) {
var arrayFecha=re.exec(txt.value);
var dia=parseInt(arrayFecha[1]);
var mes=parseInt(arrayFecha[2]);
var anno=parseInt(arrayFecha[3]);
if ((anno%4==0 && anno%100!=0) || (anno%100==0 && anno%400==0)) arrayDiasMes[1]=29;
if (mes>=1 && mes<=12) {
if (dia>=1 && dia<=arrayDiasMes[mes-1]) return true;
}
}
txt.value='';
alert('Fecha incorrecta: debe ser una fecha válida en el formato dd/mm/aaaa.');
txt.focus();
return false;
}
// validación de número natural
function validaNumeroNatural(txt) {
var re=/^\d+$/;
if (re.test(txt.value)) return true;
alert('Número incorrecto: debe introducir sólo dígitos.');
txt.focus();
return false;
}
// validación de moneda (esta no me la pedías, pero es muy útil.
// Comprueba cualquier número con un punto decimal y hasta dos dígitos decimales.
function validaMoneda(txt) {
var re=/^\d+(\.\d{1,2})?$/;
if (re.test(txt.value)) return true;
alert('Cantidad incorrecta: debe introducir un número, opcionalmente seguido de un punto decimal y uno o dos decimales.');
txt.focus();
return false;
}
// validación de identidad (10 dígitos)
function validaCedula(txt) {
var re=/^\d{10}$/;
if (re.test(txt.value)) return true;
alert('Cédula no válida: debe constar de 10 dígitos.');
txt.focus();
return false;
}
Todas las validaciones se utilizan igual, asociándolas al gestor de onBlur del campo de texto a controlar:
<input type="text" name="miTexto" onblur="validaMoneda(this)">
Lo mejor es que pongas las validaciones que necesites dentro de un <script> en la sección <head> de la página.
No dudes en volverme a preguntar si tienes problemas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas