【问题标题】:MVC View and JavaScript fileMVC 视图和 JavaScript 文件
【发布时间】:2009-09-25 08:19:35
【问题描述】:

当在一个视图中,在 MVC 中,并且你有你的 JavaScript 时,我试图将它移动到同一目录中的一个 JavaScript 文件,它报告它无法归档 javascript 文件

作为示例,我使用了 NerdDinner 和 DinnerForm.aspx,在与 DinnerForm.aspx 相同的目录中创建了一个名为 DinnerForm.js 的 JavaScript 文件,并在 aspx 文件中引用了它,如下所示:

这是问题所在,如果我的 JavaScript 文件与 DinnerForm.aspx 不在项目中的同一目录中,我需要将其保存在附近,我该怎么做?

我不想放置完整路径,例如:“~\views\dinners\dinnerform.js”,因为这只是一种解决方法,以后会引起问题

有什么想法吗?

【问题讨论】:

    标签: asp.net-mvc views


    【解决方案1】:

    您不能在 Views 文件夹中拥有 JavaScript 文件,因为它实际上并不存在于浏览器中。如果您查看 Views 文件夹中的 Web.config 文件,您会发现它被设置为 HttpNotFoundHandler 处理程序。这意味着它为对其文件夹的所有请求返回 404。

    为什么不把它们放在 Scripts 文件夹中呢?你总是可以在它下面有子文件夹。

    例如/Scripts/Dinner/dinnerform.js

    【讨论】:

    • 关于 HttpNotFoundHandler 的有趣信息。谢谢!
    • 是的,我知道您可以这样做,但是它将 html 从 JavaScript 中分离出来,使其难以在后期维护,因此不这样做的原因。目前 JavaScript 位于 html 视图中,因此将其移动到另一个目录只会增加复杂性。
    【解决方案2】:

    按照惯例,JavaScript 文件应该放在项目的 Scripts 文件夹中,并且可以链接为

    <script src="<%= Url.Content("~/Scripts/jquery-1.3.2.js") %>"  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-22
      • 2013-02-23
      • 1970-01-01
      • 2011-02-02
      • 2018-04-09
      • 1970-01-01
      • 2015-09-14
      • 1970-01-01
      相关资源
      最近更新 更多