Att tänka på i fråga om prestanda för uttryck i XML-formulärobjektmodellen

Med XMP-formulärobjektmodellen i Adobe utgår du från en metod för att skapa formulär som skiljer mellan formulärets layout, design och innehåll.

I en formulärdesign kopplar referenssyntaxuttryck objekt till värden, objekt och egenskaper i trädhierarkin i en DOM (Document Object Model). Referenssynta-uttryck anges vanligtvis i formulärets logiska struktur, i valideringar, beräkningar eller andra behörighetsvillkor.

Tänk på följande tips för att minska den tid som krävs för att tolka referenssyntaxuttryck:

  • Använd så enkla uttryck som möjligt.

  • Undvik ”..” (dubbla punkter) i uttryck.

När du har utvärderat referenssyntaxen ska du även lagra resultatet i en objektvariabel. Det här resultatet kan hämtas om referenssyntaxen används på nytt. Det är mer effektivt att återanvända ett resultat än att utvärdera uttrycket en gång till.

I följande exempel används metoden resolveNode en gång. Objektreferensen sparas sedan och återanvänds för att ändra olika relaterade objekt. Det här skriptet kan bearbetas mer effektivt än ett skript som använder ett referenssyntaxuttryck för varje objekt och som använder metoden resolveNode för vart och ett av objekten.

var oSubform = xfa.resolveNode("xfa.form.form1.Subform1"); 
if (oSubform.all.length< 3) { 
      Subform.SubformUpButton1.presence = "invisible"; 
      Subform.SubformLabel1.presence = "invisible"; 
      Subform.SubformUpButton2.presence = "invisible"; 
      Subform.SubformLabel2.presence = "invisible"; 
 }