javascript - 如何使用 xsl 值作为 onclick 的 ID

标签 javascript xml xslt

我有以下代码:(我使用 jquery)

<a href="javascript:" 
  onclick="document.getElementById('TEST').style.display = ( (document.getElementById('TEST').style.display == 'block') ? 'none' : 'block' );">
  <xsl:value-of select="$DisplayTitle"/>
</a>

<div id="TEST" style="display:none">
  <xsl:value-of select="@Announcement" />
</div>

这很好用。但是我拉取了多个元素,所以 hide 的第一个声明的唯一显示是合乎逻辑的,因为这是 ID 为:TEST 的第一个元素

现在我希望你使用 <xsl:value-of select="@ID" />对于 elementbyid 但我不能把它放在引号之间。以下格式不正确

<a href="javascript:" 
  onclick="document.getElementById('<xsl:value-of select="@ID" />').style.display = ( (document.getElementById('TEST').style.display == 'block') ? 'none' : 'block' );">
    <xsl:value-of select="$DisplayTitle"/>
</a>

关于如何正确格式化的任何提示?

最佳答案

更紧凑的解决方案:

<div id="{@ID}">
    <xsl:value-of select="@Announcement"/>
</div>

此外,wirhin onclick 属性使用:

getElementById({@ID})

关于javascript - 如何使用 xsl 值作为 onclick 的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11556786/

相关文章:

javascript - 使用下拉列表中的参数从 View 调用 Web API

java - 如何让两个不同的端点具有不同的命名空间和相同的 JAXB 类?

XML 架构,为什么 xs :group can't be child of xs:all?

javascript - 迭代对象数组 javascript - 奇怪的行为?

javascript传递对象作为引用

php - 使用带有 PHP 的 AJAX 返回远程服务器状态

c# - SignedXml 报告 "Unknown transform has been encountered."

xml - 如何在 Internet Explorer 中将 xslt 文件中的 document-uri 显示为 html 文档中的文本?

javascript - jQuery:如果只有 2 个子对象(或更少),则隐藏父对象

java - 通过 XSLT 将 Java 对象转换为 JSON