$(document).load不会触发警报MVC/Razor

Jus*_*ohn 0 asp.net-mvc jquery razor

我承认我是MVC razor/jquery的新手.


在我的_Layout.cshtml中,这有效:


<body onload="alert('in the body');">
Run Code Online (Sandbox Code Playgroud)

这是_Layout.cshtml中的代码:$(document).load不会触发($(window).load也没有)


@Styles.Render("~/Content/Styles/Courses.css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/Scripts/jquery-1.7.1.min.js")

<script type="text/javascript">

$(document).load(function() {
    alert('test');

</script>

</head>
<body>
Run Code Online (Sandbox Code Playgroud)

这是在页面运行时呈现的,使用"查看源代码"获取下面的html


<link href="/Content/Styles/Courses.css" rel="stylesheet"/>

<script src="/Scripts/modernizr-2.5.3.js"></script>

<script src="/Scripts/jquery-1.7.1.min.js"></script>


<script type="text/javascript">
$(document).load(function() {
alert('test');
</script>

</head>
<body>
Run Code Online (Sandbox Code Playgroud)

我将jquery和javascript移动到Index.chstml文件,它仍然不会触发.我首先通过在VS 2010中拖动来引用.js文件.这不起作用.然后我在_Layout.chshtml中尝试了这种语法; 不起作用:

@Scripts.Render("~/Scripts/jquery-1.7.1.min.js")
Run Code Online (Sandbox Code Playgroud)

任何见解/帮助/....solutions欢迎谢谢


小智 5

你想做:

$(document).ready(function() {
    alert('test');
});
Run Code Online (Sandbox Code Playgroud)

请注意,您也错过了})该功能的结束.