脚本永远不会在mvc的{.cshtml文件中运行

时间:2016-05-17 17:00:13

标签: c# jquery .net asp.net-mvc

这是我的.cshtml文件的正式结构

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Dashboard</title>
    <link rel="stylesheet" href="~/lib/Hover/hover.css" />
    <link rel="stylesheet" href="~/lib/fontawesome/css/font-awesome.css" />
    <link rel="stylesheet" href="~/lib/weather-icons/css/weather-icons.css" />
    <link rel="stylesheet" href="~/lib/ionicons/css/ionicons.css" />
    <link rel="stylesheet" href="~/lib/jquery-toggles/toggles-full.css" />
    <link rel="stylesheet" href="~/lib/morrisjs/morris.css" />
    <link rel="stylesheet" href="~/lib/select2/select2.css" />
    <link rel="stylesheet" href="~/lib/datatables-plugins/integration/bootstrap/3/dataTables.bootstrap.css" />

    <link rel="stylesheet" href="~/css/quirk.css" />

    <script src="~/lib/modernizr/modernizr.js"></script>

    <script>
       alert("hello from top");
    </script>    

</head>

<body style="background:none;">
---Several divs------

   <script src="~/lib/jquery/jquery.js"></script>
    <script src="~/lib/jquery-ui/jquery-ui.js"></script>
    <script src="~/lib/bootstrap/js/bootstrap.js"></script>
    <script src="~/lib/jquery-toggles/toggles.js"></script>

    <script src="~/lib/morrisjs/morris.js"></script>
    <script src="~/lib/datatables/jquery.dataTables.js"></script>
    <script src="~/lib/datatables-plugins/integration/bootstrap/3/dataTables.bootstrap.js"></script>
    <script src="~/lib/select2/select2.js"></script>

    <script src="~/js/quirk.js"></script>

    <script>
       alert("hello from bottom");
    </script>
</body>
</html>

实际上它是我们设计师提供的设计,头部的第一条警报消息成功弹出,以确保我的浏览器中没有禁用javascript,但最后的警报从未显示过。当我链接外部脚本时,它也永远不会工作。这真的很烦人。我在stackoverflow中引用了this问题和更多内容,但没有解决。

我怎样才能知道这里发生了什么?是因为以前的js文件中有错误吗?或者它是因为旧的html4?除了return View();声明之外,我的Action方法中没有任何内容,因此我认为没有必要发布。

另外一件事是我在身体中使用@Html.Action("...")呈现了一个局部视图,我认为这不是问题,因为我也尝试删除它。请指导我,我是初学者。

1 个答案:

答案 0 :(得分:0)

这似乎是我几个月前犯的错误。您的页面是从

开始的
<!DOCTYPE ...>
<html ...>

表示它澄清您没有使用任何主布局页面,因此您引用的答案中给出的任何类型的@Scripts.Render在当前情况下都不起作用。只需一个简单的解决方案就可以在页面顶部将Layout设置为null,例如

@{
    Layout = null;
    ...
}

一切都会正常。