一尘不染

将CSS类分配给使用SQL“ FOR XML”生成的HTML标签

sql

我正在使用“ FOR XML”从SQL获取表行和表数据(带有HTML标记)。有没有一种方法可以将CSS类分配给SQL中的html标记?

我现在得到的是: <tr><td>Name</td><td>Value</td></tr>

SQL查询:

SELECT  (SELECT [Name] as [td] FOR XML PATH(''), type),
        (SELECT [Value] as [td] FOR XML PATH(''), type)
FROM    table
FOR XML PATH('tr')

所需的输出:

<tr class="test1"> <td class="test2">Name</td> <td class="test3">Value</td> </tr>


阅读 174

收藏
2021-05-30

共1个答案

一尘不染

我知道我在回答自己的问题,以为这可能会对其他人有所帮助。

我将类作为属性添加到XML节点,这给了我所需的输出。

SELECT  'test1' AS [@class]
    , ( SELECT  'test2' as [@class]
        , (SELECT 'Name' FOR XML PATH(''))
        FOR XML PATH('td'), type)
    ,(SELECT  'test3' as [@class]
        , (SELECT 'Value' FOR XML PATH(''))
        FOR XML PATH('td'), type) 
FOR XML PATH('tr'), type

输出:
<tr class="test1"><td class="test2">Name</td><td class="test3">Value</td></tr>

2021-05-30