Причина этого в том, что вы не делаете этот вызов для элемента DOM - вы делаете это для объекта jQuery , который хранит информацию об объектах DOM, на которые он должен влиять.
И причина .datatables()
в том, что какой-то плагин (вероятно, DataTables ) сделал его доступным следующим образом:
jQuery.fn.my_foo_func = function(){
console.log(jQuery(this));
};
Если вы примените вышеизложенное, вы будетеспособен сделать что-то подобное:
$("#some_id").my_foo_func();
, который передаст на консоль объект (ы) jQuery, для которого вы его вызвали.
Достаточно ли ясно?