2011-09-27 4 views
2

나는 이와 같은 XML을 가지고있다.XSLT에 값이 존재하는지 확인하는 방법

그리고 XSL 템플릿에서 변수로 $ formErrors가 있는데 값이 존재하는지 확인하고 싶습니다. PHP에 상응하는 것이 있으면 in_array() 함수가 필요합니다. XSLT에서 어떻게이 작업을 수행 할 수 있습니까?

답변

2
<xsl:if test="count(formErrors/value) > 1"> 
    Show Errors 
</xsl:if> 
<!-- Test if value exists --> 
<xsl:if test="formErrors/value ='address_1'"> 
    Show Errors 
</xsl:if> 
+0

내가 ADDRESS_1은 $ formErrors를 나타납니다 말하는 경우에 검사 할 것입니다. – Kevin

+0

업데이트 됨 나는 그것이 잘되기를 바란다. – a1ex07

1

이 시도 :

<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl" 
> 
    <xsl:output method="xml" indent="yes"/> 

    <xsl:template match="/"> 
    <xsl:variable name="check">address_1</xsl:variable> 
    <xsl:if test="count(/formErrors[value/text() = $check]) > 0"> 
     <xsl:message terminate="no">Value with text <xsl:value-of select="$check"/> : exists!</xsl:message> 
    </xsl:if> 
    </xsl:template> 
</xsl:stylesheet> 

출력 :

[xslt] : Warning! Value with text address_1 : exists! 
관련 문제