Как сделать сортировку по XSLT - PullRequest
0 голосов
/ 04 ноября 2010
  <div id="MySampleListTable">
<table width="80%" class="newClass">
  <tr>
    <xsl:if test="count(List) > 0">
     <td valign =" "top" 
      <table width="100%" class="mygrid" cellpadding="0" cellspacing="0">
        <caption></caption>
        <tr style="text-align: left;">
          <th id="ColHeader">
            <div class="colheaderdefault">Default</div>
          </th>
          <xsl:for-each select="Listcol/column">
            <th>
              <xsl:attribute name="Id">
                ColHeader_<xsl:value-of select="."/>
              </xsl:attribute>
              <div>
                <xsl:attribute name="class">
                  ColHeader_<xsl:value-of select="."/>
                </xsl:attribute>
                <xsl:choose>
                  <xsl:when test=".='Name'">Name</xsl:when>
                  <xsl:otherwise>
                    <xsl:value-of select="@DisplayName"/>
                  </xsl:otherwise>
                </xsl:choose>
              </div>
           </th>
         </xsl:for-each>
          <th>
            Date
          </th>
       </tr>
        <xsl:apply-templates select="List"    />
      </table>
       </td>

    </xsl:if>
   </tr>

У меня вышеупомянутый XSLT, и мне нужно отсортировать его по Имени, а затем по Дате. Столбец (-ы) «Имя и дата» должен быть кликабельным, и в зависимости от клика я должен иметь возможность отсортировать результат.

Любой пример был бы великолепен. Спасибо за вашу поддержку.

1 Ответ

1 голос
/ 04 ноября 2010

, если вы хотите обработать сортировку на стороне xslt, измените

<xsl:for-each select="Listcol/column">

до

<xsl:for-each select="Listcol/column">
   <xsl:sort select="@name" order="ascending" />
   <xsl:sort select="@date" order="ascending" />

Если вам нужна вся функциональность веб-страницы, которая может сортировать результаты на основе взаимодействия с пользователем, вам придется попробовать себя и сообщить нам, где вы спотыкаетесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...