在xslt中隐藏消息

时间:2018-03-29 16:28:15

标签: javascript xml xslt

我的xslt中有这条消息:

                <tr class="EnteteChapitreRouge" id="alert">
                <td colspan="3">
                  <table align="center">
                    <tr>
                      <th>
                        &#160;Attention ! Une ou plusieurs ligne de cette prescription protocolée nécessitent d'etre modifiées &#160;
                      </th>
                    </tr>
                  </table>
                </td>
              </tr>
      </xsl:if>

我想在点击按钮时隐藏它,当我再次点击时让它回来,有没有办法?我为这个按钮做了一个功能javascript

1 个答案:

答案 0 :(得分:1)

XSLT与HTML页面上的动态效果。 XSLT脚本处理由服务器生成的XML并生成 (在本例中)HTML文件,然后由浏览器呈现。

就显示或隐藏HTML元素而言, 采用以下例子。

<!DOCTYPE html>
<html>
<head>
  <script>
    function showHide() {
      var x = document.getElementById("alert");
      if (x.style.display === "none") {
        x.style.display = "table-row";
      } else {
        x.style.display = "none";
      }
    }
  </script>
</head>
<body>
  <p>Text before.</p>
  <p><button onclick="showHide()">Show / Hide</button></p>
  <table border="1" cellspacing="2">
    <tr><td>Row before</td></tr>
    <tr id="alert"><td>&#160;Attention! ...</td></tr>
    <tr><td>Row after</td></tr>
  </table>
  <p>Text after.</p>
</body>
</html>

showHide函数负责隐藏和显示alert元素。 请注意,因为在您的示例中它是一个表行,我使用table-row 显示样式,而不是通常使用的block

Show / Hide按钮在每次单击时执行此功能,导致隐藏 或显示alert行。

当然,上述HTML代码段的各个部分必须是其中的一部分 XSLT脚本,但我重复说XSLT处理器正在运行(创建 目标HTML)之前浏览器的任何操作。

还有其他方法可以执行此任务,例如 jQuery toggle函数, 但您使用 JavaScript 标记(不是 jQuery )标记了您的问题, 所以我使用了普通的JavaScript。