未捕获的TypeError:在jQuery中

时间:2017-06-23 05:46:59

标签: javascript jquery jquery-plugins jquery-confirm

我正在项目中使用jquery-confirm.js插件的确认对话框。

但我抓到了以下错误:

"Uncaught TypeError: a(...).on is not a function
 at jquery-confirm.min.js:10
 at jquery-confirm.min.js:10"

经过漫长的谷歌我将下面的jQuery CDN插入该功能的那个,然后确认插件jjquery-confirm的对话框工作正常,但我又遇到了另一个错误:

$() is not a function

问题是我有另一个document.ready()函数,如下面的

    $(function() {
    $("#successMsg").dialog({
            modal: true,
            autoOpen: false,
            buttons: {
                OK: function() {
                    $(this).dialog('close');
                }
            }
    });
    $("#failureMsg").dialog({
        modal: true,
        autoOpen: false,
        buttons: {
            OK: function() {
                $(this).dialog('close');
            }
        }
    });

    $("#validateMsg").dialog({
            modal: true,
            autoOpen: false,
            buttons: {
                OK: function() {
                    $(this).dialog('close');
                }
            }
    });
});

页面上有两个jquery路径

<script src='/scripts/jquery-1.4.2.min.js'></script>

<script
src="https://code.jquery.com/jquery-3.2.1.min.js"
integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
crossorigin="anonymous"></script>

我认为是因为jquery版本我使用下面的代码,但没有运气

$.noConflict();

我无法使用这两个功能的问题,如果有人知道解决方案,那将是非常值得注意的。

1 个答案:

答案 0 :(得分:0)

您收到Uncaught TypeError: a(...).on is not a function,因为您使用的是1.4.2以下的jquery版本,其中.on不受支持,因为它在版本1.7中引入。

因此,使用jquery版本onbind更改为1.4.2

或保持on不变并使用最新的jquery版本,即cdn one。