form instance focus

Avatar

Avatar

PHBx1

Avatar

PHBx1

PHBx1

13-10-2016

I have a simple form with two pages one text field on each page. The first page has a button that adds another instance of it to the document. When the button is pressed another page is added but the focus stays on the same page.

I'm looking for the code syntax that will allow me to set focus to the newest(last) instance of the added page.

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

_Bruce_Robertson

MVP

Avatar

_Bruce_Robertson

MVP

_Bruce_Robertson
MVP

17-10-2016

Hi,

In Designer you will need to use xfa.host.setFocus() to set focus.

So, something like;

var newPage = this.resolveNode('form1._Pg2').addInstance(1);

xfa.host.setFocus(newPage.F1.somExpression);

Regards

Bruce

Answers (5)

Answers (5)

Avatar

Avatar

PHBx1

Avatar

PHBx1

PHBx1

18-10-2016

Perfect, thank you.

Avatar

Avatar

try67

Avatar

try67

try67

13-10-2016

I've moved your question to the LiveCycle Designer forum, where you're more likely to get an answer relevant to your situation.

Avatar

Avatar

PHBx1

Avatar

PHBx1

PHBx1

13-10-2016

I'm adding this page through a button click:

this.resolveNode('form1._Pg2').addInstance(1);

So assuming I'm on the first page, and click add page, and I want to go to the first text field on the second page, the structure of the command would be like this?

I'm unclear how to address the second page. (very new to this)

form1._Pg2(2).F1.setfocus

Thanks In advance!

Avatar

Avatar

George_Johnson

Avatar

George_Johnson

George_Johnson

13-10-2016

You can also set the document's pageNum property to display the newly created page.

Avatar

Avatar

try67

Avatar

try67

try67

13-10-2016

Assuming you're doing it by spawning a template you can derive the name of the field in the spawned page (it has a fixed structure, composing of the template name, the page number and the original field name) and then use the setFocus method to switch to it.