Powershell 如何使用convertto html创建包含动态列的html表?
如何使用convertto html创建包含动态列的html表 数据可以如下所示(列的数量和名称会有所不同): 我尝试过以下方法:Powershell 如何使用convertto html创建包含动态列的html表?,powershell,Powershell,如何使用convertto html创建包含动态列的html表 数据可以如下所示(列的数量和名称会有所不同): 我尝试过以下方法: $HTMLRows = $TableRows | convertto-html $_ $TableRows | ForEach-Object {Add-Member -InputObject $_ -Type NoteProperty -Name Value -Value $_; $_} | ConvertTo-Html -Fragment -Property Va
$HTMLRows = $TableRows | convertto-html $_
$TableRows | ForEach-Object {Add-Member -InputObject $_ -Type NoteProperty -Name Value -Value $_; $_} | ConvertTo-Html -Fragment -Property Value
请让我知道,如果更多的信息是需要给一个答案
编辑:我自己找到了答案(如下),将问题和答案留在这里,以防我忘记,或者其他人需要它。我设法将这段代码放在一起,解决了我的问题,但html表中的列顺序不正确。。想知道为什么编辑:我找到了它,调整了下面的代码([Ordered]) 另外,我可以删除colgroup标签吗
$ColumnHeadings = $("Col1","Col2","Col3")
$TableRows = @(("a1","b1","c1"),("a2","b2","c2"),("a3","b3","c3"), ("a4","b4","c4"))
$columns = $ColumnHeadings.Count
$HTMLRows = $TableRows | Where-Object{$_} | ForEach-Object {
$row = [Ordered]@{}
For($rowIndex = 0;$rowIndex -lt $columns;$rowIndex++)
{
$h = $ColumnHeadings[$rowIndex]
$row.Add($h,$_[$rowIndex])
}
[pscustomobject]$row
} | ConvertTo-Html -Fragment
给这个整洁的桌子:
<table>
<colgroup><col/><col/><col/></colgroup>
<tr><th>Col1</th><th>Col2</th><th>Col3</th></tr>
<tr><td>a1</td><td>b1</td><td>c1</td></tr>
<tr><td>a2</td><td>b2</td><td>c2</td></tr>
<tr><td>a3</td><td>b3</td><td>c3</td></tr>
<tr><td>a4</td><td>b4</td><td>c4</td></tr>
</table>
COL1 COL2COL3
a1b1c1
a2b2c2
a3b3c3
a4b4c4
<table>
<colgroup><col/><col/><col/></colgroup>
<tr><th>Col1</th><th>Col2</th><th>Col3</th></tr>
<tr><td>a1</td><td>b1</td><td>c1</td></tr>
<tr><td>a2</td><td>b2</td><td>c2</td></tr>
<tr><td>a3</td><td>b3</td><td>c3</td></tr>
<tr><td>a4</td><td>b4</td><td>c4</td></tr>
</table>