HTML强制URL超链接被视为非相对(绝对)超链接



我有一个我们的用户为各种客户的网站输入的URL列表。。。我正在将此列表从服务器加载到网格中,供用户查看。。。我用href HTML标记包装URL,使其可点击。。。问题是,有时用户输入的URL不带http://或www.前缀,因此浏览器将它们视为相对URL,而这种情况从未发生过,因为所有这些网站都是为我们的客户提供的,而且都是外部的。有没有办法强制将这些URL视为绝对URL而不是相对URL?

这里有一个例子:

<a target='_blank' href='google.com'>google.com</a>

如果你尝试这样做,你会发现浏览器会认为它是一个相对路径,而事实并非如此。

感谢


解决方案:

我选择检查"//"(因为我不知道协议是什么-可能是http或https),如果找不到,我假设它是一个http网站,并在URL前面加上它-所以简而言之,没有办法强迫浏览器将超链接视为绝对

您可以在url之前添加//,它应该可以工作。

类似://stackoverflow.com

为什么不对输入进行预处理,并在必要时附加http://

一个相对URI。

如果您想链接到http://google.com/那么这就是你需要链接到的地方。

您可以调整正在包装的URI,也可以尝试通过算法猜测它是否是一个相对链接。

请注意,您不能安全地假设应该有一个www因为网站使用它只是一种惯例,不再是一种强烈遵循的惯例。

最新更新