2017-07-28 91 views
0

所以,我有这样的形象:链接在不同的文件中的书签的图像,HTML

<p class="b1"> 
    <img id="cakes" src="~/images/cakesBanner.png" alt="cakes"> 
</p> 

,并在一个单独的文件我有这样的:

<div class="navbar-collapse collapse"> 
    <ul class="nav navbar-nav"> 
     <li><a href="~/Views/Home/Index.cshtml#cakes">Cakes</a></li> 

但是,相反的按钮滚动到书签,它导航到 .../Views/Home/Index.cshtml#cakes

新的HTML和不知道我做错了什么。

回答

0

您可以使用Html.ActionLink辅助方法。它会为你生成适当的链接。因此,而不是:

<a href="~/Views/Home/Index.cshtml#cakes">Cakes</a> 

使用:

@Html.ActionLink(
    linkText: "Cakes", 
    actionName: "Index", 
    controllerName: "Home", 
    protocol: null, 
    hostName: null, 
    fragment: "cakes", 
    routeValues: null, 
    htmlAttributes: null 
) 

这将产生:

<a href="/Home/Index#cakes">Cakes</a> 

通知书的,正确的网址是/Home/Index而不是~/View/...

+0

我复制并粘贴了您的建议,但出现错误:“'ActionLink'的最佳重载没有名为'hostName'的参数”。我不知道这是什么意思。 – nesto2k

+0

如果你只是删除这行'hostName:null,''会发生什么? –

+0

“没有给出的参数对应于'lHtmlHelper.ActionLink(string,string,string,string,string,string,object,object)'所需的形式参数'hostName'' – nesto2k