Generador de reglas
Introducción
Rule Builder te permite agregar lógica condicional a tus formularios de forma rápida e intuitiva sin utilizar una sola línea de código. Simplemente necesita agregar una serie de condiciones a cumplir para implementar una serie de acciones como ocultar/mostrar elementos HTML, habilitar/deshabilitar campos, copiar valores de campos, omitir páginas y hacer cálculos.
Para acceder al Generador de reglas debes ir al Administrador de formularios , hacer clic en el Acciones correspondiente al formulario que trabajarás, luego Reglas condicionales .
Requisitos
Antes de utilizar el Generador de reglas, su formulario debe tener al menos un campo. De lo contrario, se muestra un mensaje de advertencia.
Sin limitaciones
No tienes ninguna limitación para crear reglas condicionales. Puede crear tantas reglas, condiciones, subcondiciones y acciones como sea necesario.
Agrega tu primera regla
Para este ejemplo, debes crear un formulario de contacto con cuatro campos:
- Nombre (campo de texto)
- Correo electrónico (campo de correo electrónico)
- Mensaje (área de texto)
- Botón (con texto Enviar)
Luego, vaya al Administrador de formularios, ubique su formulario, haga clic en el botón Acciones y luego haga clic en Reglas condicionales.
- Una vez en este Creador de reglas de formulario, lo primero que notará es un panel en blanco con el botón Agregar regla. Haga clic en este botón para crear su primera regla.
- Luego verás dos líneas, la primera hace referencia a las condiciones y la segunda a las acciones.
- Haga clic en el botón Agregar condición y aparecerá el primer campo del formulario, seguido de una declaración. En nuestro ejemplo, el primer campo del formulario es un campo de texto con la etiqueta 'Nombre', por lo que el Generador de reglas mostrará la condición
'Name' 'is present'
. - Ahora haga clic en el botón Agregar acción y observe que aparecen varias listas de selección. La primera lista muestra la acción a realizar (Para este ejemplo, déjela en 'Mostrar'); el segundo muestra el Tipo de resultado (Para este ejemplo, deje 'Campo') y el tercero, la primera etiqueta de campo: 'Nombre'. Para este ejemplo, lo cambiará por "Enviar" (el texto "Enviar" se refiere al botón).
- Finalmente, en la parte superior derecha de esta regla verás un pequeño aviso naranja de “Cambios no guardados” y al lado un botón verde con el icono de Comprobar. Haga clic en este botón para guardar esta regla. La advertencia desaparecerá.
Has creado tu primera regla.
Si ve su formulario, notará que el botón ha desaparecido, pero si ingresa un texto en el campo 'Nombre', el botón aparece.
Debe tener en cuenta que algunas reglas se cumplen de forma bidireccional; es decir, si se ha cumplido la condición se ejecutará la acción. Pero, si la condición no se ha cumplido, se ejecutará la acción contraria (Mostrar <=> Ocultar, Habilitar <=> Deshabilitar, Matemáticas <=> Restablecer a O).
Puede agregar reglas adicionales haciendo clic en el botón "Agregar regla", pero esto no se guardará hasta que presione el botón verde. Recuerde que cada regla se almacenará por separado.
Nota: Para eliminar una regla , haga clic en el botón rojo con el ícono de la Papelera. Además, si deseas dejar de ejecutar una regla durante un tiempo determinado, puedes deshabilitarla y luego habilitarla cuando lo necesites.
Anatomía de la regla
Una regla condicional se compone de tres partes: Nombre/Descripción, Condiciones y Acciones.
Nombre / Descripción
La primera parte nos permite describir la lógica condicional. Simplemente use algunas palabras para nombrar o describir lo que desea lograr con esta regla. (Opcional. Longitud máxima: 255)
Condiciones
Es la segunda parte de una regla, está al principio y te permite especificar el campo o campos que necesitan ser evaluados, según el tipo de evaluación.
- Tipo de condición : El tipo de condición indica cuántas condiciones se deben cumplir para ejecutar la acción. Puede ser: Todos, Cualquiera o Ninguno. El valor predeterminado es Todo.
- Condición: ¿La declaración se refiere a un campo de formulario y debe cumplirse? Consta de 3 partes.
- Nombre : el nombre del campo del formulario en el que se basa la condición.
- Operador : el operador de comparación utilizado para evaluar la condición.
- Valor : Es un valor arbitrario que el usuario debe ingresar al Formulario. La forma en que se definirán los Valores variará según el tipo de campo y el tipo de operador.
- Múltiples condiciones : puede agregar múltiples condiciones a una regla. El tipo de condición indicará si se deben cumplir todas (Y), si hay alguna (O) o ninguna.
- Grupo de condiciones : Además de condiciones, una regla puede contener un grupo de condiciones. Un grupo de condiciones se diferencia de una condición en que permite cambiar el tipo de condición. Entonces una regla puede ser del tipo Todos (Y), pero el grupo puede ser del tipo Cualquiera (O).
- Proceso de evaluación : El proceso de evaluación de condiciones es de arriba hacia abajo. Es decir, las condiciones del principio serán evaluadas antes que las que estén al final, en orden descendente.
Nota: Las condiciones " Pertenece a " y " No pertenece a " pueden analizar múltiples valores separados por "|", esto permite comparar el valor del campo con múltiples valores, si uno de ellos coincide se ejecutará la acción.
Comportamiento
La última parte de una regla indica la acción a realizar si se cumplen las condiciones. Como condiciones, las acciones tienen una forma declarativa fácil de entender.
Una acción consta básicamente de tres partes:
- Tipo de acción:
- Mostrar / Ocultar
- Activar/Desactivar
- Copiar : le permite copiar el valor de un campo u otro elemento o un valor estático y pegarlo en otro campo automáticamente. Un gran ejemplo de dónde esto es útil es en un formulario en el que podría estar recopilando una dirección de envío y facturación. El usuario final puede ingresar su dirección de envío y marcar la opción Copiar para completar automáticamente los campos de dirección de facturación con los mismos datos. Otro caso de uso común es utilizar un valor vacío estático para borrar un campo mediante lógica condicional.
- Matemáticas : Permite Sumar / Resta / Multiplicación / División / Resto de campos y mostrar el resultado en otro campo o elemento HTML.
- Evaluar : Permite evaluar expresiones matemáticas (fórmulas) y establecer el resultado en otro campo. También es compatible con cálculos de fechas. Por ejemplo, si quieres calcular la multiplicación de dos campos y dividir este valor entre 10, utilizas la siguiente fórmula:
{{number_1}} * {{number_2}} / 100
. Tenga en cuenta que la evaluación de expresiones matemáticas no funciona con acciones opuestas. Puede leer la lista completa de cálculos avanzados que admite Rule Builder gracias a las excelentes bibliotecas Math.js y date-fns - Formato de número : le permite formatear un número de diferentes maneras y sin ningún tipo de codificación. Por ejemplo, para darle el formato de moneda a un número: 10130,25, use el siguiente formato '$0,0,00' y el número ahora se mostrará como $10,130.25. Además, por defecto, el formato tomará la configuración regional del idioma que hayas seleccionado en la configuración de tu formulario, así por ejemplo, si nuestro Idioma del Formulario es Alemán, obtendrá: €10 130,25. Puede leer la lista completa de formatos que admite Rule Builder gracias a la excelente biblioteca Numeral.js .
- Formato de texto : le permite seleccionar varios campos para crear una nueva cadena de texto formateada y establecer el resultado en otro campo o elemento HTML. P.ej. Para generar automáticamente una dirección de correo electrónico, seleccione un campo Nombre e ingrese el siguiente formato {{0}} @example.com, luego seleccione el campo Correo electrónico donde se mostrará la dirección de correo electrónico. Puede usar tokens numéricos para identificar la posición del campo en la lista de campos, o puede usar el ID de campo o el Alias de campo, en nuestro ejemplo: {0}@example.com o {{text_1234}} @example.com o {{name}} @example.com debería funcionar.
- Saltar : Permite definir a qué página ir cuando pasamos a la página siguiente. Esta acción sólo debe usarse en un formulario de varios pasos.
- Forma: Le permite configurar acciones relacionadas con el formulario:
- 'Enviar': Para enviar el formulario.
- 'Restablecer': Para restablecer el formulario.
- 'Página siguiente': Para ir a la página siguiente.
- 'Página anterior': Para ir a la página anterior.
- Objetivo: Variará según el tipo de Acción. Puede ser de dos tipos:
- Campo
- Elemento
- Nombre:
- Si el objetivo es Campo, será el nombre del campo.
- Si el Objetivo es Elemento, estará entre varios elementos HTML seleccionados por jQuery. Por ejemplo:
- '#abc': el objetivo es el elemento HTML con 'abc' como ID.
- '.abc': el objetivo son todos los elementos HTML con 'abc' como clase CSS.
- Acciones opuestas : de forma predeterminada, las acciones opuestas se han habilitado porque ayudan a la creación de reglas condicionales comunes y las hacen más lógicas. Por ejemplo, si después de cumplir una condición quiero mostrar un campo, claramente al no cumplir la condición quiero mantener este campo oculto. Sin embargo, hay ocasiones en las que la desactivación de acciones opuestas puede resultar útil. Cuando esto ocurra, sólo se ejecutará la acción descrita en la regla.
Tenga en cuenta que el uso de elementos requiere conocimientos básicos de jQuery, pero ofrece grandes ventajas. Por ejemplo, podrías crear una acción para ocultar todos los campos del formulario;'Hide' 'Element' '.form-group'
.
Nota: Puede identificar el ID y la clase CSS de los campos del formulario utilizando la pestaña Código del Creador de formularios .
Validación condicional
Puede omitir una validación de campo obligatoria utilizando reglas condicionales de dos maneras:
- Cuando el campo está oculto.
- Cuando el campo pertenece a una página que ha sido omitida.
Por ejemplo, si se crea un campo con el Creador de formularios y en las reglas condicionales se define que este campo solo debe mostrarse si otro campo cumple una condición y la condición no se cumple, entonces el primer campo ya no será obligatorio (se no ser validado por el servidor).
Nota: Para utilizar la validación condicional, la validación del lado del cliente debe estar deshabilitada. (Ver Configuración del formulario -> Sin validar) )