La función de validación general se basa en un objeto de configiración, que luego se aplica sobre un formulario específico, a continuación se explica cómo es su uso.
Validator
Configuración del objeto de validación
La llave del objeto es el id o name (en el caso de los radios) del cuál se desea verificar y aplicar la validación, cada item tiene la siguiente estructura de parámetros:
Propiedad |
tipo |
Descripción |
l |
string |
Label del campo que aparecerá en la alerta |
r |
boolean |
true para validar el campo, false para no tenerlo en cuenta |
t |
string |
Id del contenedor HTML donde está el label que se pondrá rojo (vacio para los nuevos) |
f |
string |
tipo de validación especial a aplicar (ver cuadro siguiente) |
mn |
integer |
Mínimo de caracteres que debe tener un campo |
mx |
integer |
Máximo de caracteres que debe tener un campo |
re |
Object |
Cuando se indica en la propiedad f el valor regexp, se debe indicar acá la expresión regular a aplicar |
//formularios de tablas
var of_fields =
{
't1': { 'l': 'Fecha esperada de entrega', 'r': true, 't': 'td_7' },
'r1': { 'l': 'Almacen', 'r': true, 't': 'td_25' },
'r2': { 'l': 'Cargar a', 'r': true, 't': 'td_r2' },
's2': { 'l': 'Almacenista que hará la entrega', 'r': true, 't': 'td_s2' },
's1': { 'l': 'Tipo de solicitud', 'r': false, 't': 'td_6' },
'r4': { 'l': 'Entregar Mercancia En', 'r': true, 't': 'td_r4' },
't3': { 'l': 'Destinatario de la mercancia', 'r': true, 'f': 'alpha', 't': 'td_5', 'mn': '3', 'mx': '100' },
't5': { 'l': 'Valor total', 'r': true, 'f': 'alpha', 't': 'td_3' },
'ta1': { 'l': 'Justificacion', 'r': true, 't': 'td_2' },
'r7': { 'l': 'Este consumo debe afectar el presupuesto del mes', 'r': true, 't': 't_tr7' }
}
//Formularios Nuevos
var of_fields = {
't8': { 'l': 'Fecha Inicio', 'r': true, 'f': '', 't': '' },
't7': { 'l': 'Ciudad Destino', 'r': true, 'f': '', 't': '' },
't27': { 'l': 'Ciudad Origen', 'r': true, 'f': '', 't': '' },
's4': { 'l': 'Hora Inicio', 'r': true, 'f': '', 't': '' },
't10': { 'l': 'Fecha Fin', 'r': true, 'f': '', 't': '' },
's6': { 'l': 'Hora Fin', 'r': true, 'f': '', 't': '' },
'r3': { 'l': 'Transporte', 'r': true, 'f': '', 't': '' },
'r4': { 'l': 'Trayecto', 'r': $ck('r31'), 'f': '', 't': '' },
'r1': { 'l': 'Viajero', 'r': true, 'f': '', 't': '' }
}
Tipos de validación para los campos
Los tipos de validación que se pueden aplicar sobre la propiedad f son estos:
tipo |
Descripción |
alpha |
Caracteres alfanuméricos y acentos |
alpha2 |
Solo númneros del 0 al 9 |
alpha3 |
Solo letras de la a hasta z y puntos |
alpha4 |
Solo letras de la a hasta z, dos puntos y guión |
alpha5 |
Números del 1 al 9 y letras de la a hasta z |
alpha6 |
Caracteres alfanuméricos y acentos |
alphanum |
Muchos caracteres alfanuméricos |
integer |
Solo números enteros |
real |
Solo números reales |
email |
Correos válidos |
emailDL |
Correos válidos con dominios largos |
phone |
Validación para teléfono |
date2 |
Validación para fecha |
regexp |
Debe escribirse regexp, la declaración de hace en re |
float |
Solo números flotantes |
date |
Validación para fecha más elaborada |
time |
Validación para la hora |
Configuración del validator
En el campo o_cfg se envía un objeto con unas configuraciones, estos son los parámetros posibles:
Propiedad |
tipo |
Descripción |
to_disable |
Array |
Arreglo de tipo string que contiene el id de los botones a deshabilitar |
alert |
function |
Se puede enviar una función si se queire presentar una alerta diferente a la del validator |
var of_config = {
'to_disable': ['Submit'],
'alert': function (msj) {
app.dialog.alert(msj.replace('diligencie', 'diligencia'));
}
};