[xsl] Escaping curly braces in an attribute

Subject: [xsl] Escaping curly braces in an attribute
From: "Martinez, Brian" <brian.martinez@xxxxxxxxxxx>
Date: Mon, 16 Jun 2003 15:52:53 -0600
What do you do when you need to use curly braces and *don't* want the
processor to treat them as an attribute value template?

Consider:

<a href="#" onclick="if (foo == false) {bar = true; alert('ding');} return
false">Don't click me</a>

If foo == false, the browser should execute the next two statements.  But
the XSLT processor (rightly) sees this as an AVT and attempts to evaluate it
as an expression, with predictably dire results.

A workaround is to write the onclick handler with xsl:attribute:

<xsl:attribute name="onclick">if (foo == false) {bar = true; alert('ding');}
return false</xsl:attribute>

but I wanted to know if there was any way to escape the curly braces
directly in the attribute.

thanks,
b.

| brian martinez                           brian.martinez@xxxxxxxxxxx |
| lead gui programmer                                    303.357.3548 |
| cheap tickets, part of trip network                fax 303.357.3380 |
| 6560 greenwood plaza blvd., suite 400           englewood, co 80111 |
| cendant travel distribution services   http://www.cheaptickets.com/ |


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread