【发布时间】:2015-05-22 18:18:18
【问题描述】:
我正在创建一个 asp.net MVC 应用程序。
我有一个名为“receive”的视图,它放在 Views/Main 文件夹中。
我正在尝试添加 js 文件。
在智能感知中,我可以访问 js 文件函数。
但是当我运行应用程序时,js文件没有链接。
我的看法如下
@model dSite.Models.MModels
<script type="text/javascript" src="../../Scripts/Jquery-2.1.js"> </script>
<script>
$("#btn").click(function ()
{ alert("aa");
});
</script>
@{
ViewBag.Title = "receive";
}
<h2>
receive</h2>
<input type="text" id="txtname" placeholder="enter name" />
<input type="button" id="btn" value="click here" />
我的 Scripts 文件夹位于根目录下。
如何将我的 js 文件链接到我的视图?以上方法我都试过了,还是不行
以下是文件结构
js文件结构
【问题讨论】:
-
在脚本
src中,尝试用~/替换../../ -
@Alex 哦,亲爱的,请展开那个 Scripts 文件夹 :)
-
@Alex 好吧,好像脚本确实在那里。如果您在页面中检查浏览器控制台,当它尝试加载脚本时是否看到 404?如果您尝试浏览到 (root-address)/Scripts/Jquery-2.1.js 会怎样?
-
是什么让你觉得它没有加载?如果您希望看到一个带有“aa”的警告框,那么它与 jquery 无关 - 因为
$("#btn")是undefined(你真的应该使用波浪号<script src="~/Scripts/jquery-2.1.js"></script> -
首先 jquery 总是在加载!如果没有在浏览器控制台中定义
$.,您会看到它。真正的问题是脚本位于页面顶部,而不是在 document.ready 中。当视图被渲染时会发生什么,你有$("#btn").click(function ()但此时带有id="btn"的元素不存在(它在页面的下方)所以你实际上将.click()附加到不存在的东西上(它是undefined)
标签: javascript .net asp.net-mvc