Re: transformToFragment with a node
"Alex Iskold" <[email protected]>
| Newsgroups | gmane.comp.mozilla.devel.layout.xslt |
|---|---|
| Organization | adaptiveblue |
| Message-ID | <[email protected]> |
Thanks for your reply, Jonas. I tried that before and that does make sense, but it did not work. Alex alex iskold founder & ceo http://www.adaptiveblue.com "Jonas Sicking" <[email protected]> wrote in message news:[email protected]... > Alex Iskold wrote: >> Hi all, >> >> I am trying to do the following: >> >> JavaScript >> >> var elements = xml.documentElement.childNodes; >> for ( var i = start; i <= end ; i++ ) { >> var fragment = xsltProcessor.transformToFragment( elements[i], >> doc ); >> list.appendChild( fragment ); >> } >> >> XSL >> >> <xsl:stylesheet version="1.0" >> xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >> xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> >> >> <xsl:include href="common.xsl"/> >> >> <xsl:output method="xml"/> >> >> <xsl:template match="/"> >> <vbox> >> <xsl:value-of select="name(.)"/> >> </vbox> >> </xsl> >> >> Basically, I am looping through and applying stylesheet to invididual >> nodes. >> >> But it does not seem to match, instead I get text clumped together in >> return. >> I am declaring the XUL namespace so I am not sure what is wrong. > > Your match expression match="/" only matches root nodes in the document > you are transforming. However none of the nodes you are passing in are > root nodes, but rather elements in the middle of the document. If you > change your template to say > > <xsl:template match="*"> > > it'll match any element that you pass in. > > Hope that makes sense. > > / Jonas