यह xml फ़ाइल है। "श्रेणीनाम" तत्व में रिक्त स्थान और कैरिज वापसी का इरादा है।xsl: स्ट्रिप-स्पेस कैरिज रिटर्न को हटा नहीं रहा है
<?xml version="1.0" encoding="utf-8"?>
<group>
<item>
<id>item 1</id>
<CategoryName>
</CategoryName>
</item>
<item>
<id>item 2</id>
<CategoryName></CategoryName>
</item>
<item>
<id>item 3</id>
<CategoryName> </CategoryName>
</item>
</group>
उपरोक्त XML फ़ाइल के लिए XSLT फ़ाइल निम्न है। ऐसा करने का अनुमान है कि यह "श्रेणी नाम" तत्व में सभी रिक्त स्थान को साफ़ कर देगा। फिर, यह जांच करेगा कि "श्रेणी नाम" खाली है या नहीं।
<?xml version="1.0" encoding="utf-8"?>
<!-- DWXMLSource="testempty.xml" -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:strip-space elements="*" /> <!--HERE IS STRIP SPACE-->
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Untitled Document</title>
</head>
<body>
<xsl:for-each select="/group/item">
<xsl:if test="CategoryName = ''"> <!--HERE IS THE TEST-->
<p>Empty</p> <!--IT WILL OUTPUT 'EMPTY' IF THE ELEMENT IS EMPTY-->
</xsl:if>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
समस्या है, xsl:strip-space
अपना काम नहीं कर रही है। केवल आइटम 2 का "श्रेणी नाम" "खाली" परीक्षण पास करता है।
क्या गलत है?
मैं अपने ग्रहण पर इस परीक्षण किया है, यह काम किया जैसा कि आपने उम्मीद की थी। यह प्रिंट 3 "खाली" – Weibo
मैंने उपयोग किया एडोब ड्रीमवेवर और यह केवल एक खाली दिखाता है। – user1535147
संभावित डुप्लिकेट: http://stackoverflow.com/questions/1134318/xslt-xslstrip-space-does-not-work – K3N