@Url.Content 问题

第一个问题:

@Url.Content 引用问题

<script src="@Url.Content("~/Scripts/ArtDialog/jquery.artdialog.js?skin=blue")" type="text/javascript"></script>

<script src="~/Scripts/ArtDialog/jquery.artDialog.js?skin=blue"></script>

今天写了个MVC的Demo,文件夹结构很简单,如下:

利用EF生成Model框架并手工加表字段注解,但在页面上JS验证始终没显示。实在无语。

无意中在浏览器里按F12,看见提示:

Failed to load resource: the server responded with a status of 404 (Not Found) http://localhost:1445/~/Scripts/jquery.validate.min.js

Failed to load resource: the server responded with a status of 500 (Internal Server Error) http://localhost:1445/~/Scripts/jquery.validate.unobtrusive.min.js%22

估计是路径JS文件的路径问题,赶紧看了下Layout.cshtml视图:

<head>
    <meta charset="utf-8" />
    <title>@ViewBag.Title</title>
    <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
    @*映射错误的路径*@
    <script type="text/javascript" src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
    <script type="text/javascript" src="~/Scripts/jquery.validate.min.js"></script>
    <script type="text/javascript" src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
</head>

果然,11,12,13行的代码运行时会被映射到:

映射后的物理路径有问题。实际Jquery在网站根目录下,而不再Test文件夹下!

把出错的这几行去掉,用@Url.Content()函数映射,将虚拟(相对)路径转换为应用程序绝对路径。

PS:要想使用MVC的JS自动验证,除了在Model写注解、引入jquery-1.5.1.min.js外,还要注意是否引入了jquery.validate.js。从名字即可得知,那是JS的验证方法集。

默认的MVC3空项目和Internet的_Layout.cshtml不引用jquery以及validate.js.

(博文引用原作者地址:http://www.cnblogs.com/nlh774/p/3594666.html)

第二个问题:

<script src="@Url.Content("~/Scripts/ArtDialog/jquery.artdialog.js?skin=blue")" type="text/javascript"></script>

<script src="@Url.Content("~/Scripts/ArtDialog/jquery.artdialog.js")" type="text/javascript"></script>

以及路径中是否加“?skin=blue"的区别:

最近在做一个项目有没有后缀直接导致了弹框异常如下:

本来应该如下显示:

籍此记录问题。

时间: 2024-10-05 13:12:38

@Url.Content 问题的相关文章

Unknown URL content://downloads/my_downloads

在使用Android系统下载管理DownloadManager时,部分手机会报如下错误: W/System.err﹕ java.lang.IllegalArgumentException: Unknown URL content://downloads/my_downloads 而抛出此异常的原因可能是"下载管理器"处于"停用"状态 需要进入应用程序管理器,找到已关闭界面,将在"下载管理器"启动 鉴于此问题,我们在写下载程序时,最好还是自己写一套

MVC 中与链接相关的辅助方法(Html.ActionLink,Html.RouteLink , Url.Action , Url.Content ,Url.RouteUrl)

Html.ActionLink 与 Url.Action  1.两者者是根据给定的Controller,Action 生成链接, 但是Html.ActionLink 返回的是MvcHtmlString的一个带<a>标签的超链接, 而Url.Action返回的是string,一个根本Controller,Action生成的URL地址, 比Html.ActionLink少了<a>标签 Html.RouteLink 与 Url.RouteUrl 两者都是可以指定由哪一个路由来生成Url,

[PHP学习教程]006.获取网页内容(URL Content)

引言:获取网页内容是我们实现网页操作的基本之基本,今天这一讲,我们和大家讲一下基本请求网页内容的几种方法. 我们似乎每天都要做这样一件事情,打开一个浏览器,输入网址,回车,一个空白的页面顿时有了东西,它可能是百度之类的搜索页面,或是一个挤满了文字和图片的门户网站. 我们可以从三个方面理解这个过程,一个是浏览器,二个是服务器,第三个是浏览器和服务器之间通信的协议. 当然,我们今天不讲<网页请求过程 > 这一次,我们说一下如何用PHP代码请求网页内容. 获取网页内容方法 1.file_get_co

android content provider 中的URL解析总是出问题?求指导!!!

java.lang.IllegalArgumentException: Unknown URL content:// 不管是自己写或者用别的的代码在我的eclipse中都是报这个错误 很怪,我的URL地址绝对没有写错,是不是和使用版本有关系?我的google提供的eclipse,sdk用的2.3.3 android content provider 中的URL解析总是出问题?求指导!!!

不需JS实现跳转-&lt;META HTTP-EQUIV=&quot;Refresh&quot; CONTENT=&quot;0;URL=xxxx.action&quot;&gt;

<%@ page contentType="text/html;charset=GB2312"%> <%@ page language="java"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>管理平台</tit

ASP.NET MVC 4 (八) URL链接和Ajax帮助函数

使用帮助函数创建链接 MVC提供一些帮助函数创建链接,这些函数根据路径映射表自动调整生成的URL: 说明 示例 输出结果 应用程序相对URL Url.Content("~/Content/Site.css")  /Content/Site.css 到控制器action的链接 Html.ActionLink("My Link", "Index", "Home") <a href="/">My Li

Content Provider 小结

Android中的四大组件之一ContentProvider,它之间在多个应用间进行存储和读取数据等操作,实现不同应用间的数据共享. ContentProvider,解释为内容提供商.顾名思义,就是对外提供数据.其工作形式主要是ContentProvider以Uri的形式对外提供数据,允许其他应用访问或者修改数据,其他应用程序就使用ContentResolver根据ContentProvider提供的Uri去访问进行对数据的各种操作. 实现数据共享的步骤: 1,创建一个简单的数据库供Conten

第21章 URL和Ajax辅助器方法

一.创建基本的链接和URL 视图最基本的任务之一是创建链接或URL,使用户能够随之进入应用程序的其他部分. 辅助器生成的链接或URL的好处是:输出来自路由配置,当路由发生改变全自动反映在链接和URL中. 渲染URL的HTML辅助器 描述 示例 输出 相对于应用程序的URL Url.Content("~/Content/Site.css") /Content/Site.css 链接到指定的动作控制器 Html.ActionLink("My Link", "I

Html.ActionLink , Url.Action

也来总结一下 以后省的忘了 都是从controller中获取到action名字返回 html.actionlink 返回的是带<a> 标签的超链接 url.action 是返回正常controller 中 action地址  没有<a> 标签 url.content 将相对路径转换为当前运用程序的绝对路径 @section scripts{} 表示将此段内容的js放置在模板页中  就是模板页中rendersection("scrpits") 这一句这个位置