Skip to main content
Participant
June 16, 2017
Answered

Does anyone have a script to make text flow to a second field when first field is full (first field has an indent)

  • June 16, 2017
  • 6 replies
  • 4953 views

Hi,

I am working on forms that have 2 or more lines to fill out, but the first line is indented. I would like to add a script to the custom field box to have the text continue into the next field when the first one is full. I see some old scripts online, but nothing that I can get to work, and I am not a script writer. I'm wondering if anyone has something that would work? Thanks! [Adobe Acrobat DC, forms]

This topic has been closed for replies.
Correct answer JR Boulay

You'll notice that when you jump from one field to the next you lose a character.

I just found the right script, the previous one was actually not perfect.

Place this script as a doc-level script:

function autoTab(doc, event, cNext)

{

    if (event.rc && AFMergeChange(event).length == event.target.charLimit)

        {doc.getField(cNext).setFocus();}

}

And place this script as a custom keystroke script:

autoTab(this, event, "NextFieldName");

Beware that the "Limit of n characters" must be settled in each field.

Here is a new sample file that works fine: Fichiers partagés - Acrobat.com

Also check out these 2 topics where you can find more elaborated scripts made by.

- Debenu's Planet PDF Forum - Discussion forum for Acrobat & PDF

- http://acrobatusers.com/forum/forms-acrobat/auto-tab

6 replies

Participant
July 3, 2017

It worked for me! Thank you! =D

JR Boulay
Community Expert
JR BoulayCommunity ExpertCorrect answer
Community Expert
June 21, 2017

You'll notice that when you jump from one field to the next you lose a character.

I just found the right script, the previous one was actually not perfect.

Place this script as a doc-level script:

function autoTab(doc, event, cNext)

{

    if (event.rc && AFMergeChange(event).length == event.target.charLimit)

        {doc.getField(cNext).setFocus();}

}

And place this script as a custom keystroke script:

autoTab(this, event, "NextFieldName");

Beware that the "Limit of n characters" must be settled in each field.

Here is a new sample file that works fine: Fichiers partagés - Acrobat.com

Also check out these 2 topics where you can find more elaborated scripts made by.

- Debenu's Planet PDF Forum - Discussion forum for Acrobat & PDF

- http://acrobatusers.com/forum/forms-acrobat/auto-tab

Acrobate du PDF, InDesigner et Photoshopographe
JR Boulay
Community Expert
Community Expert
June 17, 2017

Here is a sample file: [removed, see below for details]

Here is the documentation: http://help.adobe.com/livedocs/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Acrobat…

Acrobate du PDF, InDesigner et Photoshopographe
Participant
June 21, 2017

Thank you, that works perfectly!

try67
Community Expert
Community Expert
June 21, 2017

Not really... You'll notice that when you jump from one field to the next you lose a character. Also, if you back-space and delete the characters in one field it won't go back to the previous one. And if you manually delete the contents of a field the cursor will not go back to it, unless you reset the whole form. These issues are why I wrote it can't be done in a PDF file.

Inspiring
June 16, 2017

There appears to be no reliable code for this.

JR Boulay
Community Expert
Community Expert
June 16, 2017

Place this JavaScript as a keystroke format script in the first field:

if (event.fieldFull || event.willCommit) this.getField("NextTabField").setFocus();

Where "NextTabField" is the name of the 2th field.

Acrobate du PDF, InDesigner et Photoshopographe
Participant
June 16, 2017

Thanks, but the script doesn't work for me.

try67
Community Expert
Community Expert
June 16, 2017

Not possible.