zoukankan      html  css  js  c++  java
  • @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"的区别:

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

    本来应该如下显示:

    籍此记录问题。

  • 相关阅读:
    30个热门的CSS3 Image Hover 脚本
    70个jQuery触摸事件插件 支持手势触摸!
    40个超酷的jQuery动画教程
    45个漂亮且有创意的HTML5网站展示
    40+极具创意的产品展示PSD模板
    25个开始学习HTMLE5的最好的资源
    25个很酷的jQuery倒计时脚本–添加动态计数器!
    45个wordpress自适应插件
    30+WordPress古典风格的主题古典却不失时尚
    为kindeditor上传图片添加水印(PHP版)
  • 原文地址:https://www.cnblogs.com/cheari/p/5534378.html
Copyright © 2011-2022 走看看