Search code examples
jqueryhandsontable

jquery + handsontable: has no method 'on'


I'm getting this error:

uncaught TypeError: Object [object Object] has no method 'on' 

at jquery.handsontable.js:2258

I've got something setup that looks like this:

<script src="/javascripts/jquery-1.5.1.min.js" type="text/javascript"></script>
<script src="/javascripts/jquery-ui-1.8.12.custom.min.js" type="text/javascript"></script>
<script src="/javascripts/jquery.handsontable.js" type="text/javascript"></script>
<script src="/javascripts/jquery.simplemodal.1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
    var $j = jQuery.noConflict();
</script>

<div id="dataTable" class="dataTable"></div>
<script>
$j("#dataTable").handsontable();
var data = [
        ["", "Kia", "Nissan", "Toyota", "Honda"],
        ["2008", 10, 11, 12, 13],
        ["2009", 20, 11, 14, 13],
        ["2010", 30, 15, 12, 13]
];
$j("#dataTable").handsontable("loadData", data);
</script>

Solution

  • The handsontable plugin requires jQuery 1.9+ due to the use of .on and other methods not available in older versions of jQuery.

    You could create a small script that implements .on to use .bind and .delegate where appropriate.