Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

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

like image 951
Coding Duchess Avatar asked Aug 28 '26 21:08

Coding Duchess


1 Answers

.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 () {
    ...
like image 150
Andrew Brooke Avatar answered Aug 30 '26 11:08

Andrew Brooke



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!