我有一个导航栏,
当前网址: www.domain.com/what-is-your-fb-username - ?/
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="">Shuboy2014</a>
</div>
<ul class="nav navbar-nav">
<li class="active"><a href='delete/'>Delete</a></li>
<li class="active"><a href="edit/">Update</a></li>
<li class="active"><a href="logout">Logout</a></li>
</ul>
</div>
</nav>
当我点击导航栏上的注销选项时,它会重定向到 www.domain.com/what-is-your-fb-username - ?/ logout ,我想转到 www.domain.com/logout 。
我该怎么做?任何有用的建议都会有所帮助。
答案 0 :(得分:1)
您可以更改注销的href网址:
来自:<li class="active"><a href="logout">Logout</a></li>
至:<li class="active"><a href="/logout">Logout</a></li>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-1.12.1.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="">Shuboy2014</a>
</div>
<ul class="nav navbar-nav">
<li class="active"><a href='delete/'>Delete</a></li>
<li class="active"><a href="edit/">Update</a></li>
<li class="active"><a href="/logout">Logout</a></li>
</ul>
</div>
</nav>
答案 1 :(得分:1)
避免这类错误的最佳方法是在(所有)链接中指定完整路径 - 即http://www.domain.com/folder/page.html。
你会发现养成这种习惯可以避免错误,特别是如果你引用外部链接。
祝你好运!
答案 2 :(得分:1)
只需将/
放在href的前面,例如/logout
在前面加/
使其为path-absolute url,并将用作当前域的完整路径部分。
路径绝对URL必须为“/”,后跟路径相对URL。
您还可以使用<base>
标记设置相对路径用于生成完整网址的基本网址。因此,如果base为http://stackoverflow.com/
且当前页面位于http://stackoverflow.com/assets
,则所有相对网址都将以http://stackoverflow.com/
开头,而不是http://stackoverflow.com/assests
console.log("Document location:", document.location.href );
console.log("anchor href: ",document.querySelector("a").href);
<base href="http://stacksnippets.net/">
<a href="assets/test.html">Relative of <base></a>