Skip to main content
Inspiring
February 24, 2025
質問

Plus and Minus buttins showing and hiding images and spawing pages but not deleting the pages

  • February 24, 2025
  • 返信数 2.
  • 403 ビュー

Hi there,

 

I have attached a pdf I am working on that if you click the plus button a new image appears and then a new page is spawned up until 12 images. However the spawned pages aren't deleting when I click the minus button. Does anyone know where the problem is. 

For the spawned page deletion I am using the code in the var a1 = this.getField("Page 2.1").page; this.deletePages(a1); which picks up the text field on the spawned page "Page 2". 

 

The code in the custom calculation script of the "Counter" Text field is below:

if (event.target.display = (+event.value === 1)) {
this.getField("Button 2").display = display.hidden;
this.getField("Button 3").display = display.hidden;
this.getField("Button 4").display = display.hidden;
this.getField("Button 5").display = display.hidden;
this.getField("Button 6").display = display.hidden;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 2)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.hidden;
this.getField("Button 4").display = display.hidden;
this.getField("Button 5").display = display.hidden;
this.getField("Button 6").display = display.hidden;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 3)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.hidden;
this.getField("Button 5").display = display.hidden;
this.getField("Button 6").display = display.hidden;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
var a1 = this.getField("Page 2.1").page; this.deletePages(a1);
};

if (event.target.display = (+event.value === 4)) {{
var y = this.getField("Page 1").page;
this.getTemplate("Page 2").spawn(y+1, false, false);};
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.hidden;
this.getField("Button 6").display = display.hidden;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 5)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.hidden;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 6)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.hidden;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
var a2 = this.getField("Page 3.1").page; this.deletePages(a2);
};

if (event.target.display = (+event.value === 7)) {{
var y = this.getField("Page 1").page;
this.getTemplate("Page 3").spawn(y+2, false, false);};
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.hidden;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 8)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.visible;
this.getField("Button 9").display = display.hidden;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 9)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.visible;
this.getField("Button 9").display = display.visible;
this.getField("Button 10").display = display.hidden;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
var a3 = this.getField("Page 4.1").page; this.deletePages(a3);
};

if (event.target.display = (+event.value === 10)) {{
var y = this.getField("Page 1").page;
this.getTemplate("Page 4").spawn(y+3, false, false);};
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.visible;
this.getField("Button 9").display = display.visible;
this.getField("Button 10").display = display.visible;
this.getField("Button 11").display = display.hidden;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 11)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.visible;
this.getField("Button 9").display = display.visible;
this.getField("Button 10").display = display.visible;
this.getField("Button 11").display = display.visible;
this.getField("Button 12").display = display.hidden;
};

if (event.target.display = (+event.value === 12)) {
this.getField("Button 2").display = display.visible;
this.getField("Button 3").display = display.visible;
this.getField("Button 4").display = display.visible;
this.getField("Button 5").display = display.visible;
this.getField("Button 6").display = display.visible;
this.getField("Button 7").display = display.visible;
this.getField("Button 8").display = display.visible;
this.getField("Button 9").display = display.visible;
this.getField("Button 10").display = display.visible;
this.getField("Button 11").display = display.visible;
this.getField("Button 12").display = display.visible;
};

 

Any help, as always, will be greatly appreciated. 

 

Steve

 

返信数 2

PDF Automation Station
Community Expert
Community Expert
February 24, 2025

Removed by author

Nesa Nurani
Community Expert
Community Expert
February 24, 2025

Are you using reader or pro?
You should change all instances of:

if (event.target.display = (+event.value === X)) {
to
if (+event.value === X) {

 
Inspiring
February 24, 2025

Pro but the end user will be using reader

Nesa Nurani
Community Expert
Community Expert
February 24, 2025

See if this works for you:

var n = Number(event.value);
var totalPages = this.numPages;

if (totalPages == 3 && n === 10) {
 this.getTemplate("Page 4").spawn(4, false, false);} 
else if (totalPages == 4 && n === 9) {
 this.deletePages(3);} 
else if (totalPages == 2 && n === 7) {
 this.getTemplate("Page 3").spawn(3, false, false);} 
else if (totalPages == 3 && n === 6) {
 this.deletePages(2);} 
else if (totalPages == 1 && n === 4) {
 this.getTemplate("Page 2").spawn(2, false, false);} 
else if (totalPages == 2 && n === 3) {
 this.deletePages(1);}


for (var i = 2; i <= 12; i++) {
 var f = this.getField("Button " + i);
  if (f) {
   if (i <= n) {
    f.display = display.visible;} 
   else {
    f.display = display.hidden;}}}

Also use this in Plus button:

var f = this.getField("Counter"); 
f.value += 1;

and this in 'Minus' button:

var f = this.getField("Counter"); 
f.value -= 1;