HTML删除url变量,没有PHP或JS解决方案

时间:2016-04-14 17:15:48

标签: html url urlvariables

我的网站同时使用PHP和JS AJAX,因此我非常熟悉它们,而且我不想要包含它们的解决方案。我有这个页面结构,我的所有用户都只在一个着陆的php页面上,然后根据URL的p变量获取正确的内容。

http://www.example.com/?p=about
http://www.example.com/?p=aMap-anothermap-evenAnothermap-lastelyTheFile

这个页面结构对我很有用,除了我不知道创建一个只删除整个?p=home的链接的正确方法。因为我希望我的家/起始页是可变的。我希望它是

http://www.example.com/

而不是

http://www.example.com/?p=home

现在我可以建立链接

http://www.example.com/?

然后只需使用JS ?删除pushState(),但这看起来很傻,只适用于JS用户。

让我们说我想要只用?做上面的例子然后我可以创建这样的链接。

<a href="?">Link</a>
<script src="SomeCoolPushStateScript"></script>

我从经验中知道,这甚至不起作用:

<a href="">Link</a>

所以问题是:如何在使用HTML ?variable=something时删除网址的href部分?

2 个答案:

答案 0 :(得分:2)

路径./应该可以解决问题。

<a href="./">Link</a>

如果要保留主脚本名称,例如index.php,则必须包含该名称。

<a href="index.php">Link</a>

或者,您可以使用PHP动态生成域相对或绝对URL。

答案 1 :(得分:1)

您不需要使用查询字符串。

<a href="/">Link</a>

会转到example.com的根目录。

我不建议使用"./"。如果用户位于您网站根目录中的页面上(例如http://www.example.com/page.html),则可以执行此操作。但是,如果它们位于子目录中的页面上,则不起作用。例如。如果用户在http://www.example.com/hello/page.html上,则只会链接到http://www.example.com/hello/

使用"/"可确保用户访问您网站的根目录。