我有一個圖像,當點擊後,重定向到另一個頁面。我需要一種方法來知道鏈接是內部的(應用程序頁面)還是外部鏈接。如果鏈接是外部的,我希望它彈出一個新的標籤,如果它是內部彈出在同一個標籤。內部和外部鏈接之間的差異
這是代碼部分。
<a class="lnkImage" href="@item.ImageURL" target="_blank">
<img id="PrivateimgPreview" src="@item.ActualImage" />
</a>
ImageURL和實際圖像來自模型。基本上我想要這個功能。
if(External)
{
<a class="lnkImage" href="@item.ImageURL" target="_blank">
<img id="PrivateimgPreview" src="@item.ActualImage" />
</a>
}
else if(internal)
{
<a class="lnkImage" href="@item.ImageURL">
<img id="PrivateimgPreview" src="@item.ActualImage" />
</a>
}
我意識到,通過使用Request.Url.Host我可以得到主機和比較,但是這將意味着硬編碼,並會在不同的主機進行更改。有沒有辦法一般地在視圖中找出@ item.ImageURL的域?
UPDATE:我可以爲我的網站的域和控制器中的@ item.ImageURL的域做Request.URL,並在我的模型中設置一個布爾值,但是我有4個這樣的部分。一個圖像鏈接,一個圖像標題,一個圖像細節等等。所以這會讓我介紹4個新的模型對象,將它們中的每一個都設置在控制器中。所以我希望它有可能在視圖中進行比較。
你基本上需要比較每個圖像'Request.Url.Host'和'item.ImageURL'。如果它們不同(鏈接是外部的),則將屬性添加到圖像鏈接'target =「_ blank」'。 – myroman