首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET MCAVC4.0中非突出验证中的奇怪行为

ASP.NET MCAVC4.0中非突出验证中的奇怪行为
EN

Stack Overflow用户
提问于 2015-12-02 12:30:47
回答 1查看 223关注 0票数 1

我使用的是ASP.NET MVC4.0,我正在体验一种奇怪的行为,使用JQuery进行不引人注目的验证。

我已经将它的相关脚本放置到我的layout.cshtml中,当我打开视图并点击submit按钮时,验证消息就会出现,并且突然触发服务器调用。即调试器进入POST事件的服务器代码中。

基本上,这两件事都发生在这里。客户端验证以及服务器端事件。

我可以看到消息被触发,但是执行似乎还在继续,并转到服务器端。

这是我的视图代码:

代码语言:javascript
复制
 @using (Html.BeginForm("AddUser", "Registration", FormMethod.Post, new { enctype = "multipart/form-data", id = "frm1" }))
        {
            //some HTML markup
            .
            .
            .
            <div class="col-md-1 divside-left-first">
                <button type="submit" value="Save" id="Btnsave" class="btn ui-state-default medium">&nbsp;Submit&nbsp;</button>
            </div>
        }

我已经将以下脚本放在底部的layout.cshtml文件中,并在浏览器上正确地呈现它们。我查过了。

代码语言:javascript
复制
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.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>

除此之外,除了本机JQuery.js脚本之外,我没有使用任何其他脚本。

我已经尝试过的事情:

  • 将脚本放在最上面的部分。没起作用。
  • 将按钮类型从按钮更改为输入。没起作用。
  • 尝试将脚本放入节视图,而不是layout.cshtml。没起作用。

对于我在这里做错了什么或没有得到什么帮助或建议,我们将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-05 08:49:15

经过近一天的挣扎,我终于找到了解决这个问题的办法。对任何一个人来说,这都可能是另一回事,但就我而言,这似乎是可行的:

我正在使用的JQuery版本和不引人注目的验证JS的问题。他们似乎相处得不太好,每当发生POST事件时,我在浏览器控制台中观察到一个错误,说明“意外令牌u"

因此,在深入探讨这个错误的同时,我了解到这两个JS文件之间存在某种冲突,您需要使用一个额外的JS文件来帮助消除差异,使它们完美地协同工作。该文件是:

jquery.migrate

您只需要在代码中添加这个JS文件引用,并确保所有其他JS文件都在正确的位置,然后运行您的代码。在这之后,它就像预期的那样工作了。

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34042825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档