Uncaught TypeError: $(…).on is not a function
Asked Answered
D

1

5

I am using JQuery UI dialog on my page and getting this error

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Test</title>

    <script src="Scripts/jquery-1.6.4.js"></script>
    <script src="Scripts/jquery-ui-1.11.4.js"></script>
    <script>
        $(document).ready(function () {
            $(".hlk1").on("click", function () {
                var linkId = $(this).attr("linkID");
                alert(linkId);
                // initialize dialog
                var dlg = $("#dialog").dialog({
                    autoOpen: false,
                    modal: true,
                    draggable: false,
                    resizable: false,
                    position: ['center', 'top'],
                    height: 380,
                    width: 530,
                    dialogClass: 'ui-dialog-osx',
                    buttons: {
                        "Done": function () {
                        $(this).dialog("close");
                    }
                }
            });

            // load content and open dialog
            dlg.load('page2.html?id=' + linkId).dialog('open');
        });
});
</script>
</head>

<body>

<a href="#" class="hlk1" linkid="305">Click here</a>
<br/>
<a href="#" class="hlk1" linkid="890">Click here</a>
<br/>
<div id="dialog"></div>
</body>
</html>

Can anyone help me figure that one out? It might be the JQuery version but this is the version Visual Studio installed through NuGet package manager

Dreda answered 9/2, 2016 at 16:18 Comment(3)
.on requires jQuery 1.7Muimuir
what about JQuery UI? which version would be compatible with 1.7?Dreda
According to this page jQuery UI 1.12.0-beta.1 supports jQuery1.7+Muimuir
M
16

.on() was introduced in jQuery 1.7, but it looks like you are running 1.6.4. If you can't change the version, you should just be able to change your function to .click

$(".hlk1").click(function () {
    ...
Muimuir answered 9/2, 2016 at 16:20 Comment(1)
also note load() is being called outside the event handlerAsymptomatic

© 2022 - 2024 — McMap. All rights reserved.