【问题标题】:Validate is not detected as a function验证未检测为函数
【发布时间】:2021-04-15 20:18:53
【问题描述】:

我的html页面头有

<script type="text/javascript" src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script>type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>

我可以在网络选项卡中看到该文件

我可以看到文件到

但 validate() 函数仍然无法识别

任何想法,我错过了什么?

这是一个使用 EntityFrameWorkCore 在 asp.net mvc 中制作的项目

【问题讨论】:

  • 查看问题上突出显示的语法。您缺少一个 " 来结束第二个 script 标记的第一个属性,因此该库没有被添加到页面中。
  • 你是对的,但遗憾的是这并没有解决我的问题。当我试图格式化帖子上的代码时,那个“可能被删除了,代码本身在项目上很好

标签: jquery asp.net-mvc entity-framework asp.net-core razor-pages


【解决方案1】:

根据我所看到的here,您需要在 $("#form") 返回的 jQuery 对象上应用验证函数,而不是在您使用 $("#form")[0].

您是否尝试过执行此操作?

$("#form").validate();

【讨论】:

  • 在我的第三个打印屏幕中,我已经表明我尝试了 '$("#form")[0].validate(); '我认为是一样的。无论如何我已经尝试过你的建议,但不幸的是仍然得到了和以前一样的结果
【解决方案2】:

首先,你需要确保jqury.validate.jsjquery-xxx.jsjquery-xxx.min.js之后被加载。例如,如果你看到加载顺序是jquery-xxx.min.jsjqury.validate.jsjquery-xxx.js,你会得到错误$().validate is not a function

你可以放

<script type="text/javascript" src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script>type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>

在 Shared/_layout.cshtml 中如下:

 @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    <script type="text/javascript" src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
    <script type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.js"></script>
    @RenderSection("scripts", required: false)

并且不需要将脚本添加到您使用它的页面中。

其次,你需要使用like

$("#myform").validate();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-12
    • 2016-10-07
    相关资源
    最近更新 更多