es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Formularios de Acrobat – Conexión de Campos

Objetivo: Código de JavaScript para vincular campos y rellenarlos automáticamente una vez que se complete el campo superior. Las líneas variarán de 2 a 5 (con múltiples áreas que tienen diferentes números totales de líneas en cada una).

Se desea que las líneas sean visibles. La opción actual de Acrobat para ajustar automáticamente el tamaño del texto y el espacio entre líneas no funciona con líneas visibles. Actualmente, el usuario debe reconocer que el campo se está llenando (el tipo se ajusta automáticamente para adaptarse) y luego mover físicamente el cursor hacia la siguiente línea.

Ejemplo (enlace a continuación): Comentarios: Me gustaría que esta área se rellene automáticamente en la línea superior y luego salte automáticamente a la siguiente línea para continuar con los comentarios.

Trabajo mucho con Acrobat pero tengo muy poco conocimiento de cómo escribir código JavaScript. Cualquier ayuda será muy apreciada.

Enlace de referencia: https://i.stack.imgur.com/LLTQS.png

Tags:  ,

Answer

  1. Avatar for davy.ai

    Solución:

    Para lograr esta funcionalidad en Acrobat, podemos usar código JavaScript para enlazar los campos y permitir que se autoricen una vez que el campo superior esté lleno. Podemos usar el evento Keystroke en Acrobat para activar el código JavaScript que enlazará los campos. Aquí hay un ejemplo de código que enlazará dos campos, permitiendo que el segundo campo se salte automáticamente a la próxima línea una vez que el primer campo esté lleno:

    // obtener el primer campo
    var primerCampo = this.getField("NombreDelCampo1");
    // obtener el segundo campo
    var segundoCampo = this.getField("NombreDelCampo2");
    
    // Configurar el evento Keystroke para el primer campo
    primerCampo.setAction("Keystroke", "if(event.willCommit) {this.getField('NombreDelCampo2').setFocus();}");
    
    // Configurar el evento Keystroke para el segundo campo
    segundoCampo.setAction("Keystroke", "if(event.willCommit) {this.getField('NombreDelCampo1').setFocus();}");
    

    En este ejemplo de código, getField se utiliza para recuperar el primer y segundo campo por su nombre, y setAction para configurar los eventos Keystroke para cada campo. La verificación if(event.willCommit) asegura que el código solo se ejecutará si el usuario ha terminado de escribir en el campo.

    Con este código JavaScript en su lugar, los dos campos estarán enlazados y el segundo campo se saltará automáticamente a la próxima línea una vez que el primer campo esté lleno.

    Tenga en cuenta que este ejemplo de código asume que los dos campos están uno al lado del otro horizontalmente. Si su formulario tiene múltiples áreas con diferentes números totales de líneas en cada una, deberá modificar el código para tener esto en cuenta.

Comments are closed.