0

当我单击链接时,它们似乎不起作用。当我右键单击它们并在新选项卡中打开它们时,它们会正确打开。

我无法弄清楚这种行为的原因。

这是我的_layout.cshtml文件的代码

<!DOCTYPE html>
<html>
<head>
    ...
    <!-- Roboto -->
    <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:400,500,700">

    @Styles.Render("~/Content/css")
    @Styles.Render("~/Content/ratchet")
    @Scripts.Render("~/bundles/modernizr")
    @Scripts.Render("~/bundles/ratchet")

</head>
<body>

    <div class="content">
        @RenderBody()
    </div>
    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    @RenderSection("scripts", required: false)
</body>
</html>

这是我放入index.cshtml的链接示例

  <a href="@Url.Action("NewList", "Home", null)">Submit</a>
  <a href="/Home/NewList">Submit 2</a>

静态和生成的行为相同,导致我认为这是一个棘轮问题。

编辑 1 显然,即使切换不起作用(再次没有 JS 错误)

<div class="toggle active">
  <div class="toggle-handle"></div>
</div>
<div class="toggle">
  <div class="toggle-handle"></div>
</div>

它在纯 HTML 模板中工作,所以我必须假设这是来自.Render问题?

http://goratchet.com/components/

编辑 2:
许多组件似乎无法正常工作,我找到了一种绕过此问题的方法,方法是将链接替换为具有提交按钮和隐藏值的表单以 POST 到所需的操作。用户界面很糟糕,但至少按钮可以正常工作。

4

3 回答 3

0

有时调用视图时会遇到“HTTP Error 404.0 - Not Found”错误。此错误的可能原因之一只是 href 中的一个点 (.)。如果此问题是由同一问题引起的,请尝试如下(注意点):

<a href="@Url.Action("NewList", "Home")">Submit</a>
<a href="./Home/NewList">Submit 2</a>

更新:

在 ASP.NET MVC 中创建指向控制器操作的链接时,最好使用通用 ActionLink 方法,因为它允许重构友好的强类型链接:

@Html.ActionLink("NewList", "Home") 

希望这可以帮助...

于 2015-04-05T20:58:26.610 回答
0

您是否同时拥有常规和.min版本的棘轮,以便可以通过您的/bundles/ratchet捆绑包加载?确保两者都有,或者如果您只有在调试模式下运行的调试版本(或者如果您只有.min在调试模式下运行的版本)

于 2015-04-01T21:37:14.450 回答
0

我建议您将链接从身体移动到头部。

 @Scripts.Render("~/bundles/jquery")

 @Scripts.Render("~/bundles/bootstrap")

将它们移动到头部一次。

于 2015-04-06T04:43:00.790 回答