我想包含一个javascript引用,比如:
<script src="@Url.Content("~/Scripts/jqueryFoo.js")" type="text/javascript"></script>
如果我有一个Razor视图,那么在不将其添加到布局的情况下,正确的方法是什么(我只需要在单个特定视图中使用它,而不是所有视图)
在aspx中,我们可以使用内容占位符。我发现了在mvc中使用aspx的较早的示例,但不是Razor视图。
发布于 2013-01-12 02:52:57
根据您想要实现它的方式(如果有您想要的脚本的特定位置),您可以在_Layout
中实现一个@section
,它将使您能够从视图本身添加额外的脚本,同时仍然保留结构。例如:
_Layout
<!DOCTYPE html>
<html>
<head>
<title>...</title>
<script src="@Url.Content("~/Scripts/jquery.min.js")"></script>
@RenderSection("Scripts",false/*required*/)
</head>
<body>
@RenderBody()
</body>
</html>
视图
@model MyNamespace.ViewModels.WhateverViewModel
@section Scripts
{
<script src="@Url.Content("~/Scripts/jqueryFoo.js")"></script>
}
否则,你所拥有的一切都是好的。如果不介意与输出的视图“内联”,可以将<script>
声明放在视图中。
发布于 2015-01-21 15:02:45
如果您使用的是Razor视图引擎,则编辑_Layout.cshtml文件。将footer中的@Scripts.Render("~/bundles/ jquery ")移到页眉部分,然后根据需要编写javascript /jquery代码:
@Scripts.Render("~/bundles/jquery")
<script type="text/javascript">
$(document).ready(function () {
var divLength = $('div').length;
alert(divLength);
});
</script>
发布于 2017-06-20 01:37:56
在执行客户端验证时,您可以添加脚本标记,就像我们在asp.net中使用的那样,如下所示。
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
<script type="text/javascript" src="~/Scripts/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function () {
//Your code
});
</script>
https://stackoverflow.com/questions/14284707
复制相似问题