【问题标题】:jQuery validate giving error (.validate is not a function)jQuery 验证给出错误(.validate 不是函数)
【发布时间】:2018-05-01 06:48:43
【问题描述】:

我正在使用 jQuery 验证插件,它工作正常突然停止工作,当我检查控制台是否有任何错误时它给了我这个错误

未捕获的类型错误:$(...).validate 不是函数

我已经阅读了很多论坛,但所有解决方案都不适合我,请有人帮我看看这是我的代码。

这是头部

<head>
    <meta charset="<?php bloginfo('charset'); ?>">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="<?php bloginfo('template_directory'); ?>/assets/css/bootstrap.min.css" media="all" />
    <link rel="stylesheet" href="<?php bloginfo('template_directory'); ?>/assets/css/style.css" media="all" />
    <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
    <link href="https://fonts.googleapis.com/css?family=Raleway:400,700" rel="stylesheet">

    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.1/css/bootstrap-select.css" />
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.1/js/bootstrap-select.js"></script>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/jquery.validate.js"></script>



    <?php wp_head(); ?>
</head>

主体部分

<script type="text/javascript">
$(document).ready(function () {
    $("#submit").click(function (e) {
        e.preventDefault();

        $('#addpro').validate();

        var form = $("#addpro");
        var itemm = $("#id_itemchoice").val();
        var itemmsize = $("#id_size").val();
        var itemmprice = $("#id_price").val();
        var wholesaleprice = $("#id_wholesale_price").val();
        var itemmdes = $("#id_description").val();
        var quantity = $("#id_quantity_received").val();

        if (itemm === "" || itemmsize === "" || itemmprice === "" || wholesaleprice === "") {
            $(".val-error, .error-message").show();
        } else {
            jQuery.ajax({
                type: 'POST',
                data: {action: 'insert_consultant_post', itemchoice: itemm, size: itemmsize, price: itemmprice, description: itemmdes, quantity: quantity},
                url: "<?php bloginfo('url'); ?>/wp-admin/admin-ajax.php",
                success: function (data) {
                    console.log(data);

                }
            });
        }
    });
});

请看一下并告诉我我做错了什么。提前致谢

【问题讨论】:

  • 确保 jquery 和 jquery-validate 库加载成功。
  • 他们已经加载了我已经确保了 2 次​​span>

标签: jquery jquery-ui jquery-mobile jquery-plugins


【解决方案1】:

您确定您使用的是 WordPress 的 wp_enqueue_script() 吗? 检查文档 - https://developer.wordpress.org/reference/functions/wp_enqueue_script/

wp_enqueue_script()

我认为您可以进一步简化您的 ajax 发布方式。 检查这个小提琴 - https://jsfiddle.net/ftr08w9L/

$.post()

当然,您会想为您的代码调整小提琴。我还添加了一些 cmets 来帮助您。

【讨论】:

  • 非常感谢您的解决方案问题已解决
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-29
  • 2020-09-17
  • 1970-01-01
  • 2017-11-13
相关资源
最近更新 更多