Мне нужно сравнить значения, возвращаемые в моем XML. Если значение равно 0,00, тогда делайте «это», иначе «делайте это». Я получаю сообщение об ошибке при тестировании своего кода.
ошибка:
Невозможно сгенерировать документ XML с использованием предоставленного ввода XML / XSL. Об ошибках сообщалось при компиляции таблицы стилей
Сайт использует для тестирования:
https://www.freeformatter.com/xsl-transformer.html
Вот XML:
<cst>
<cli>
<cli_contact_person_name>a customer service representative</cli_contact_person_name>
<cli_phone_number>312-422-3236</cli_phone_number>
<cli_contact_phone_ext>312-422-3236</cli_contact_phone_ext>
<cli_email_address>aha-orders@pbd.com</cli_email_address>
</cli>
<inv>
<cli_contact_person_name>a customer service representative</cli_contact_person_name>
<cli_phone_number>312-422-3236</cli_phone_number>
<cli_contact_phone_ext>312-422-3236</cli_contact_phone_ext>
<cli_email_address>aha-orders@pbd.com</cli_email_address>
<AHABU>AHA</AHABU>
<cst_key>D387A106-0E7C-4201-A9DD-1B0615191D18</cst_key>
<inv_key>31F2FD83-0A06-49CC-A424-84054EF15D8F</inv_key>
<inv_code_cp>131961</inv_code_cp>
<inv_trx_date>01/05/2010</inv_trx_date>
<inv_total>150.00</inv_total>
<inv_pyd_date>01/05/2010</inv_pyd_date>
<inv_paid>125.00</inv_paid>
<inv_balance>25.00</inv_balance>
</inv>
</invs>
</cst>
Вот код XSL:
<!--Paid-->
<div class="orderhistory-subcontainer2 orderhistory-hide-1">
<xsl:choose>
<xsl:when test="inv_balance=0.00">
<xsl:value-of select="inv_pyd_date" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="" />
</xsl:otherwise>
</xsl:choose>
<!--<xsl:value-of select="inv_pyd_date" />-->
</div>
Также попробовал это:
<!--Paid-->
<div class="orderhistory-subcontainer2 orderhistory-hide-1">
<xsl:choose>
<xsl:when test = "format-number(inv_balance, '0.00') = number(0.00)">
<xsl:value-of select="inv_pyd_date" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="" />
</xsl:otherwise>
</xsl:choose>
<!--<xsl:value-of select="inv_pyd_date" />-->
Проблема в том, что мой синтаксис, я думаю здесь:
или, по крайней мере, я думал, что это была оригинальная проблема. Не уверен, в чем проблема сейчас
Обновление:
пробовал это также stll не работает с той же ошибкой:
<xsl:when test = "format-number(inv_balance, '#.00') = number(0.00)">
Обновление:
Я нашел ошибку:
<xsl:value-of select="" />