Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml XSLT中空元素的标识和着色_Xml_Xslt - Fatal编程技术网

Xml XSLT中空元素的标识和着色

Xml XSLT中空元素的标识和着色,xml,xslt,Xml,Xslt,我有一个地址簿,其XML由 <addressbook> <entry> <name prefix="Mr."> Zack Black</name> <address> <street>101 Main St</street> <city>Searcy</city>

我有一个地址簿,其XML由

<addressbook>
    <entry>
        <name prefix="Mr.">
            Zack Black</name>
        <address>
            <street>101 Main St</street>
            <city>Searcy</city>
            <state>AR</state>
            <zip>12345</zip>
        </address>
        <phone location="home"
            number="501-279-9999" />
        <phone location="work"
            number="501-279-1111" />
    </entry>
    <entry>
        <name>John Brown</name>
        <phone number="501-305-2222" />
    </entry>
    <entry>
        <name>Susan White</name>
        <address>
            <street>2000 Center Rd</street>
            <city>Dallas</city>
            <state>TX</state>
            <zip>67790</zip>
        </address>
        <phone location="home"
            number="501-279-0000" />
    </entry>
</addressbook>

扎克·布莱克
大街101号
西尔西
应收账
12345
约翰布朗
苏珊·怀特
中心路2000号
达拉斯
德克萨斯州
67790

现在,有几个空单元格。我想识别它们,然后用某种特定的颜色给它们上色,比如红色。我如何才能做到这一点?

假设您正在谈论输出HTML表,请尝试以下方法:

...
<td>
    <xsl:choose>
        <xsl:when test="@prefix">
            <xsl:value-of select="@prefix"/>
        </xsl:when>
        <xsl:otherwise>
            <xsl:attribute name="style">background-color: red;</xsl:attribute>
            <xsl:value-of select="'&#160;'"/>
        </xsl:otherwise>
    </xsl:choose>
</td>
...
。。。
背景色:红色;
...

您还应该探索空表单元格的CSS格式。

空单元格是什么意思?更好的是,您希望输出是什么样子的?如果你将这些信息编辑到你的问题中,那会有所帮助。还有任何使您接近该输出的尝试。来自给定代码。。正如您所看到的,与johnbrown相对应的元素没有地址。因此,我的输出应该是整个数据表加上红色John brown的地址单元格。。因此,我可以很容易地发现没有地址。我不能使用@prefix来选择单元格,因为我想要没有数据的单元格…(John Brown的地址单元格)。。这是作为XSLT测试的一部分发布的问题…所以,我不能在答案中使用CSS@用户59288是的,你可以。上面的示例将创建一个包含
@prefix
内容的单元格(如果存在),或一个包含红色背景的空单元格(包含)。