xsl-list
[Top] [All Lists]

[xsl] modify output document elements

2020-03-04 11:49:09
Hello,

I have a stylesheet which creates a HTML output document dynamically based on 
the incoming XML file. I use some for-each loop to get the processing done in 
the right order. My layout causes the stylesheet to look like this:

  <xsl:template name="details_table">
    <table border="0" cellspacing="0">
      <tr>
        <td width="64px">
          <a href="#" onclick="toggle('{$details_table}')" title="show/hide 
details">
            <img src="show_hide.png"/>
          </a>
        </td>
        <td>
          Details
        </td>
      </tr>
      <table id="{$details_table}" cellspacing="3" style="display: block">
        <tr>
          <td width="64px">
            <img border="0" src="{$imagedir}/null.gif"/>
          </td>
          <th align="left">Start</th>
          <th align="left">End</th>
          <th align="left">Duration [h]</th>
          <th align="left">Type</th>
          <th align="left">Category</th>
          <th align="left">Comment</th>
        </tr>
        
        <xsl:for-each select="entry[severity='STATISTICS']/statistics_category">
          ...
          <xsl:choose>
            <xsl:when test=".='Down'">
              <td width="150" valign="top">
                <xsl:choose>
                  <xsl:when test="../Down='not_set'">
                     <font color="red">not_set</font>
                  </xsl:when>
                  <xsl:otherwise>
                     <xsl:value-of select="../Down"/>
                  </xsl:otherwise>
                </xsl:choose>
              </td>
            </xsl:when>
            ...
        </xsl:for-each>
      </table>
    </table>
  </xsl:template>

Now I would like to modify the style of the details_table depending on the 
outcome of the test within the for-each loop. Since the table element has 
already been created, I do not know how one could do this without changing the 
overall logic. Is there a way to access the elements of the created HTML DOM 
tree from within the stylesheet? Or am I hunting in the wrong direction?!

Any ideas/help welcome - greetings,
Raimund Kammering
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>