xsl-list
[Top] [All Lists]

RE: [saxon] unwanted line breaks in HTML output

2003-05-09 00:47:17
Saxon never inserts newlines into HTML attribute values, only into text
nodes.

Perhaps you are producing this output using disable-output-escaping, so
Saxon thinks it is a text node? In that case, I would suggest that you
don't.

Generally I would recommend keeping "onClick" attributes short and
simple - just a call to a Javascript routine that appears somewhere else
in the HTML page. This is because (in my limited experience) browsers
are a bit sensitive to the way characters are represented in these
attributes, and XSLT doesn't give you control over the character
representation.

Michael Kay

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
mark_fletcher(_at_)peoplesoft(_dot_)com
Sent: 09 May 2003 00:09
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] [saxon] unwanted line breaks in HTML output



Is there a default line length that saxon uses to determine 
when to start a
new line in HTML output?

I'm outputting text inside an onClick tag attribute.  It 
typically looks
like this, which is what I want (one line per arguement):

<A HREF="javascript:void()" onClick="opendoc(
escape('Topic One  &#8212;  Maintaining Academic Advisement 
Setup Data'),
'htm/lsaa11.htm#d0e13039',
escape('Topic Two  &#8212;  Maintaining Academic Advisement 
Setup Data'),
'htm/lsaa11.htm#d0e13066',
escape('Topic Three  &#8212;  Using the Analysis Database to Create
Reports'),
'htm/lsaa13.htm#d0e15791',
escape('Topic Four  &#8212;  Using the Analysis Database to Create
Widgets'),
'htm/lsaa13.htm#d0e15816'
)">Database Tables Report page</A>

However, if the text inside an escape function is too long, the line
breaks, like this:

<A HREF="javascript:void()" onClick="opendoc(
escape('Topic One  &#8212;  This Is Too Much Text and It Breaks Here
And Causes Problems'),
'htm/lsaa11.htm#d0e13039'
)">Database Tables Report page</A>


and I end up with 'unterminated string constant' JavaScript 
errors in the
browser.  The limit seems to be about 150 characters on the 
line before it
gets broken at the nearest space.

I can get around this using translate( ) to insert &nbsp; in 
place of every
space in each string, but I'd rather not if it's avoidable.

Any ideas appreciated!

Mark Fletcher
PeopleSoft Language Engineering
925.694.3753
mark_fletcher(_at_)peoplesoft(_dot_)com





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



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