2016-03-15 142 views
0

我想通過PowerShell腳本超鏈接顯示在我的收件箱中的數字。但超鏈接顯示爲代碼本身,而不是所需的可點擊鏈接。根據代碼顯示超鏈接

$b = $b + @{Label='ID';Expression={'a href="http://fire.sync.net/show_bug.cgi?id="$Bug_Id">$(Bug_Id)</a>'}} 
Add-Type -AssemblyName System.Web 
[System.Web.HttpUtility]::HtmlDecode($b) 

在我的郵箱裏就顯示爲

http://fire.sync.net/show_bug.cgi?id'+'='+'Bug_id'>211

預期 - 211可點擊並直接指定到指定的網址。

代碼的超級鏈接部分 -

$a = "<style>" 
$a = $a + "TABLE{border-width: 1px;border-style: solid;border-color: gray;border-collapse: collapse; margin: 0 auto; width: 100%;}" 
$a = $a + "TH{border-width: 1px; padding: 7px; border-style: solid;}" 
$a = $a + "TD{border-width: 0px;}" 
$b = $b + @{Label='ID';Expression={"<a href='http://fire.sync.net/show_bug.cgi?id=$Bug_Id'>$Bug_Id</a>"}} 


[System.Web.HttpUtility]::HtmlDecode($b) 
$a = $a + "</style>" 


$body = $DataSet.Tables[0] | Select $b,Status,Summary,Deadline | convertto-html -head $a | out-string; 

請幫助。

回答

0

試試這個:

Expression={ "<a href='http://fire.sync.net/show_bug.cgi?id=$Bug_Id'>$Bug_Id</a>" } 

你還缺少我已經包含在我的例子開口<

+0

這沒有幫助。 :(仍然是同樣的問題。 – SoftwareTestingEnthusiast

0

嘗試濺出你的html。通過添加-Head開關,您還可以將您的樣式表作爲轉換爲HTML的一部分。

[email protected]"<style> 
TABLE{border-width: 1px;border-style: solid;border-color: gray;border-collapse: collapse; margin: 0 auto; width: 100%;} 
TH{border-width: 1px; padding: 7px; border-style: solid;} 
TD{border-width: 0px;} 
</style> 

$body = @{Label='ID';Expression={"<a href='http://fire.sync.net/show_bug.cgi?id=$Bug_Id'>$Bug_Id</a>"}} | 
ConvertTo-HTML -Head $head | Out-String 
"@ 

This article大約有豐富發送HTML格式的電子郵件,一個很好的解釋。