Skip to main content
JMFreeman
Inspiring
January 14, 2020
Answered

SyntaxError: missing ) after argument list

  • January 14, 2020
  • 4 replies
  • 2390 views

I'm getting the above error when I try to hit "okay" after editing a script in a field. The offending lines are:

//set properties of check box
togBot.strokeColor = color.black; togBot.fillColor = color.white;
togBot.setAction("MouseUp", "this.getField("botPh" + spwn).display = (event.target.value=="Off") ? display.hidden : display.visible");

 The parentheses match up, and the code matches a very similar (working) one elsewhere in the script. What is going wrong? Thanks!

This topic has been closed for replies.
Correct answer JMFreeman

I'd hoped the open paren would help...

 

spwn is going to be replaced... I tried it without that there anyway. 

 

A backslash before my internal quotes is what I needed. Thanks for the direction.

4 replies

JMFreeman
JMFreemanAuthor
Inspiring
January 14, 2020

One a related note, what's a good practice for longer, multiline codes inside my setAction method? Is there a syntax that allows me to have multiple things on their own lines within the method? I want the spawn checkbox to have the following script:

var num = event.target.name.match(/\d/g).join('');
this.getField("botPh" + num).display = (event.target.value=="Off") ? display.hidden : display.visible;
Bernd Alheit
Community Expert
Community Expert
January 14, 2020

For large codes I use document-level functions.

JMFreeman
JMFreemanAuthor
Inspiring
January 14, 2020

Thanks! I found this tip and another, which I'm using. I'm just creating a string (with hella regex) with the code, then passing that as the argument for setAction. I appreciate the help!

JMFreeman
JMFreemanAuthorCorrect answer
Inspiring
January 14, 2020

I'd hoped the open paren would help...

 

spwn is going to be replaced... I tried it without that there anyway. 

 

A backslash before my internal quotes is what I needed. Thanks for the direction.

Bernd Alheit
Community Expert
Community Expert
January 14, 2020

Where does you set spwn?

Legend
January 14, 2020

You’re trying to use quotes in your action script. But the quotes END the string. 

"this.getField(" is the complete string and everything else is an error. How could it know you meant something different? Look up “Javascript string escapes”.