MVC万无一失的验证"Sys未定义" [英] MVC Foolproof validation 'Sys is not defined'

查看:109
本文介绍了MVC万无一失的验证"Sys未定义"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用了程序包管理器控制台来安装这两个程序包:万无一失& MvcExtensions.万无一失.我在捆绑包配置中包含了万无一失的脚本文件(见下文).

I used the package manager console to install these two packages: foolproof & MvcExtentions.Foolproof. I included the foolproof script files in my bundle config (see below).

请注意,我还没有实现任何安全的代码,我只安装了pacakges并包含了脚本文件,然后运行了该应用程序.

Note that I didn't implement any foolproof code yet, I only installed the pacakges and included the script files and then ran the app.

我收到以下客户端错误:

I'm getting the following clientside error:

MvcFoolproofValidation.js:未捕获的ReferenceError:未定义Sys

MvcFoolproofValidation.js: Uncaught ReferenceError: Sys is not defined

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
     "~/Scripts/jquery-{version}.js",
     "~/Scripts/jquery-ui-{version}.js",
     "~/Scripts/jquery.unobtrusive*",
     "~/Scripts/jquery.validate*",
     "~/Scripts/MvcFoolproofJQueryValidation.js",
     "~/Scripts/mvcfoolproof.unobtrusive.js",
     "~/Scripts/MvcFoolproofValidation.js"));

呈现为:(如果有任何后果)

which renders as: (if its of any consequence)

<script src="/Scripts/jquery-1.10.2.js"></script>
<script src="/Scripts/jquery-ui-1.10.3.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="/Scripts/MvcFoolproofJQueryValidation.js"></script>
<script src="/Scripts/mvcfoolproof.unobtrusive.js"></script>
<script src="/Scripts/MvcFoolproofValidation.js"></script>

推荐答案

问题是因为顺序不正确.我遇到了同样的问题,但是我决定执行以下命令:

The problem is because the order is incorrect. I had the same problem, but i resolve doing this order:

捆绑包:

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
    "~/Scripts/jquery.validate*"));

bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
    "~/Scripts/bootstrap.js",
    "~/Scripts/respond.js",
    "~/Scripts/jquery.validate.min.js",
    "~/Scripts/jquery.validate.unobtrusive.min.js",
    "~/Scripts/blur.js"));

bundles.Add(new ScriptBundle("~/bundles/mvcfoolproof").Include(
    "~/Scripts/MicrosoftAjax.js",
    "~/Scripts/MicrosoftMvcAjax.js",
    "~/Scripts/MicrosoftMvcValidation.js",
    "~/Scripts/MvcFoolproofJQueryValidation.min.js",
    "~/Scripts/MvcFoolproofValidation.min.js",
    "~/Scripts/mvcfoolproof.unobtrusive.min.js"));

视图:

@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/mvcfoolproof")

渲染器:

 <script src="/Scripts/jquery-ui-1.11.1.js"></script>
 <script src="/Scripts/jquery.validate.js"></script>
 <script src="/Scripts/jquery.validate.unobtrusive.js"></script>
 <script src="/Scripts/MicrosoftAjax.js"></script>
 <script src="/Scripts/MicrosoftMvcAjax.js"></script>
 <script src="/Scripts/MicrosoftMvcValidation.js"></script>
 <script src="/Scripts/MvcFoolproofJQueryValidation.min.js"></script>
 <script src="/Scripts/MvcFoolproofValidation.min.js"></script>
 <script src="/Scripts/mvcfoolproof.unobtrusive.min.js"></script>

然后...问题解决了.

And... the problem its gone.

请参阅文档以检查此顺序此处.

See the documentation for check this order here.

这篇关于MVC万无一失的验证"Sys未定义"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆