【问题标题】:单选按钮的 XSL 逻辑未按预期工作
【发布时间】:2022-01-23 02:43:12
【问题描述】:

XSL

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <!--END OF PROLOGUE-->
    <!-- MATCH STATEMENT TO CAPTURE VARIABLE VALUES-->
    <xsl:template match="ECN">
   <input type="radio"
               id="Pre-Design Transfer"
               name="transfer">
               <!--value="Pre-Design Transfer">-->
            <label for="Pre-Design Transfer">Pre-Design Transfer</label>
            <xsl:if test="radiobuttons/prepost='Pre-Design Transfer'">
                <xsl:attribute name="checked">checked</xsl:attribute>
            </xsl:if>
        </input>
        <input type="radio"
            name="transfer"
               value="Post-Design Transfer">
               <!--id="Post-Design Transfer"-->
              
            <label for="Post-Design Transfer">Post-Design Transfer</label>
            <xsl:if test="radiobuttons/prepost='Post-Design Transfer'">
                <xsl:attribute name="checked">checked</xsl:attribute>
            </xsl:if>
        </input>
        <!--END PRE/POST TRANSFER PARAMETERS  PARAMETERS SECTION OF ECN-->
    </xsl:template>
</xsl:stylesheet>

XML

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='C:\Users\gedkins\Desktop\New folder\Trial.xsl'?>
<ECN>
    <radiobuttons>
        <prepost>Post-Design Transfer</prepost>
    </radiobuttons>
</ECN>

我想获取单选按钮的逻辑以查看 XML 文件中的参数。我无法在 XML 文件加载时选择单选按钮。它们都是未经检查的。我错过了什么?

谢谢。

【问题讨论】:

    标签: html xml xslt radio-button


    【解决方案1】:

    添加内容后无法创建属性&lt;label&gt;。将xsl:if 移到&lt;label&gt; 上方:

    <input type="radio"
          name="transfer"
          value="Post-Design Transfer">
      <xsl:if test="radiobuttons/prepost='Post-Design Transfer'">
          <xsl:attribute name="checked">checked</xsl:attribute>
      </xsl:if>
      <!--id="Post-Design Transfer"-->      
      <label for="Post-Design Transfer">Post-Design Transfer</label>
    </input>
    

    【讨论】:

    • @MartinHonnen 是的,我没有给予足够的关注。最初的答案不好,但问题基本相同。您必须将属性放在任何子节点之前,因此将其移动到该输入元素的标签上方。
    • 太棒了!它就像一个魅力。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-01
    • 1970-01-01
    相关资源
    最近更新 更多