Child pages
  • How can I put a String literal in a Javascript call, for instance in an onChange attribute

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Using String literals in Javascript calls requires care in escaping quotes but leaving double quotes around the final value, like we expect in HTML attributes.

Here's an example of the right way to do this (thanks to John Brad):

Code Block
titleSource
onchange='"someFunc(this.form, \'abc\')"'

Notice that

  • single quotes surround the double quotes, and
  • inline single quotes in the Javascript are escaped.

When rendered, the statement is rendered without the pair of surrounding single quotes, and the literal String stays quoted.

Code Block
titleOutput
onchange="someFunc(this.form, 'abc')"