我有一个表格,可以让人们在我的网站上输入各种链接,例如:http、https 和 ftp。当有人输入“http:stackoverflow.com”、“https:stackoverflow.com”和“ftp:stackoverflow.com”并将它们呈现在如下视图中时:
<ul>
@foreach (var link in Model.Keyword.References)
{
<li>
<a href="@link.Link" target="_blank">@link.Link</a>
</li>
}
</ul>
我得到以下输出:
- http:stackoverflow.com
- https:stackoverflow.com
- ftp:stackoverflow.com
这看起来不错,但是当我将鼠标悬停在“http:stackoverflow.com”上时,真正的链接是:“localhost:1973/stackoverflow.com”。
当我悬停 https 和 ftp 链接时,我得到正确的输出:
我发现当我通过表单提交 http 链接时,它们需要两个“正斜杠”。所以你得到的不是“http:”,而是“http://”。我想知道为什么 https 和 ftp 链接不需要这些额外的斜杠。我也想知道一个好的解决方案,因为我认为我不应该强迫用户使用这些额外的斜杠。