Skip to main content
Participant
January 21, 2025
Question

Syntax error invalid switch

  • January 21, 2025
  • 1 reply
  • 485 views

I am getting an error SyntaxError: invalid switch statement 
4: at line 5 Here is the script; 

This is supposed to populate the specified text fields based on a drop down selection. 

var dropdownValue = this.getField("Dropdown1").value;

switch (dropdownValue) {
Case "1.5":
this.getField("Text1").value = "ML180UH045E36A"
this.getField("Text2").value = "CK40HT-24A-071A"
this.getField("Text3").value = "ML14KC1-018"
break;

Case "2":
this.getField("Text1").value = "ML180UH045E36A"
this.getField("Text2").value = "CK40HT-24A-071A"
this.getField("Text3").value = "ML14KC1-024"
break;

Case "2.5":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-30B-071"
this.getField("Text3").value = "ML14KC1-030"
break;

Case "3":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-42B-71"
this.getField("Text3").value = "ML14KC1-036"
break;

Case "3.5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-42C-071"
this.getField("Text3").value = "ML14KC1-042"
break;

Case "4":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-047"
break;

Case "5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-059"
break;

default:
this.getField("Text1").value = "N/A"
this.getField("Text2").value = "N/A"
this.getField("Text3").value = "N/A"
break'
}

Case "2":
this.getField("Text1").value = "ML180UH045E36A"
this.getField("Text2").value = "CK40HT-24A-071A"
this.getField("Text3").value = "ML14KC1-024"
break;

Case "2.5":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-30B-071"
this.getField("Text3").value = "ML14KC1-030"
break;

Case "3":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-42B-71"
this.getField("Text3").value = "ML14KC1-036"
break;

Case "3.5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-42C-071"
this.getField("Text3").value = "ML14KC1-042"
break;

Case "4":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-047"
break;

Case "5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-059"
break;

default:
this.getField("Text1").value = "N/A"
this.getField("Text2").value = "N/A"
this.getField("Text3").value = "N/A"
break'
}

1 reply

Thom Parker
Community Expert
Community Expert
January 21, 2025

Regular code statements end with a semicolon.  

You've missed a lot of lines, and the last break has an apostrophy at the end. That needs to go.

JS is forgiving, but not that forgiving.

    

Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often
Participant
January 22, 2025

It looks like something double pasted in the OP.  Here is the correct posting with the correction you stated. Same erro. 

var dropdownValue = this.getField("Dropdown1").value;

switch (dropdownValue) {
Case "1.5":
this.getField("Text1").value = "ML180UH045E36A"
this.getField("Text2").value = "CK40HT-24A-071A"
this.getField("Text3").value = "ML14KC1-018"
break;

Case "2":
this.getField("Text1").value = "ML180UH045E36A"
this.getField("Text2").value = "CK40HT-24A-071A"
this.getField("Text3").value = "ML14KC1-024"
break;

Case "2.5":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-30B-071"
this.getField("Text3").value = "ML14KC1-030"
break;

Case "3":
this.getField("Text1").value = "ML180UH070E36B"
this.getField("Text2").value = "CK40HT-42B-71"
this.getField("Text3").value = "ML14KC1-036"
break;

Case "3.5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-42C-071"
this.getField("Text3").value = "ML14KC1-042"
break;

Case "4":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-047"
break;

Case "5":
this.getField("Text1").value = "ML180UH090E60C"
this.getField("Text2").value = "CK40HT-51/61C-71"
this.getField("Text3").value = "ML14KC1-059"
break;

default:
this.getField("Text1").value = "N/A"
this.getField("Text2").value = "N/A"
this.getField("Text3").value = "N/A"
break;
}

 

Thom Parker
Community Expert
Community Expert
January 22, 2025

"Case" need to be lower case 😉  This is the error. 

 And you need to end your lines with a semi colon. 

 

Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often