如何在类中调用方法?

时间:2017-09-22 06:36:35

标签: javascript jquery dom

我在html中有这个按钮:

<button id="btnCell" onclick="CellClicked(1, 1, false)"></button>

这个Javascript:

 $(function() {       
    $( "#txtSearch" ).autocomplete({
      source: function( request, response ) {
         //some logic
      },
      minLength: 2,
      select: function( event, ui ) {
        log( "Selected: " + ui.item.value + " aka " + ui.item.id );
        },
    });

  function CellClicked(x, y, selXml) {          
        //some logic
    }        
});

每当我点击上面的按钮时,我都会收到此错误:

Uncaught ReferenceError: CellClicked is not defined

这是因为封装在类中的方法,我知道我可以将该方法拖出类,它会起作用。

但我希望将方法封装起来,我问这个问题如何在方法CellClicked封装后调用函数?

1 个答案:

答案 0 :(得分:1)

您可以通过Javascript添加侦听器,而不是通过标记添加。它比将函数移动到全局范围更为可取。

 $(function() {       
    $( "#txtSearch" ).autocomplete({
      source: function( request, response ) {
         //some logic
      },
      minLength: 2,
      select: function( event, ui ) {
        log( "Selected: " + ui.item.value + " aka " + ui.item.id );
        },
    });

    function CellClicked(x, y, selXml) {          
        //some logic
    }       

    $('#btnCell').on('click', function() {
        CellClicked(1,1,false);
    }) 
});