2017-07-24 2 views
1

Ich versuche, mehrere Funktionsaufrufe in meinem Skript zu verketten, aber ich bekomme immer Uncaught TypeError: $(...).tablesorter(...).tablesorterPager is not a function, wenn ich versuche, es auf meiner Webseite zu bekommen.jQuery: Verkettung mehrerer Funktionen gibt Uncaught Typeerror

Der betreffende Code wird wie folgt formatiert:

function InitializeTableSorter() { 
    var pagerOptions = { 
     //object definitions in here 
    }; 

    $("#transaction").tablesorter({ 
     //function stuff in here  
    }).tablesorterPager(pagerOptions); 
} 

Ich bin mit dem Tablesorter plugin hier, was die tableSorter und tablesorterPager Funktionen verwendet.

Was ist hier schief gelaufen? Habe ich etwas vergessen?

+4

Haben Sie jquery.tablesorter.widgets.js zusätzlich zu tablesorter hinzugefügt? – juvian

+1

Das würde einen weiteren Fehler geben, OP fehlt wahrscheinlich das Plugin 'jquery.tablesorter.pager.js'. – Timmetje

+0

@Timmetje Ich habe auch die entsprechenden Plugin-Dateien installiert. – Thassa

Antwort

2

Vorausgesetzt, dass Sie die entsprechenden Plugin-Dateien installiert haben (in der richtigen Reihenfolge, wenn Reihenfolge Angelegenheiten)

Uncaught TypeError: $(...).tablesorter(...).tablesorterPager is not a function

ist in der Regel auf, wenn es Konflikte zwischen jQuery und andere Bibliotheken. Bleiben aus der Not, rufen $.noConflict() und vergessen Sie nicht Ihren jQuery-Code auszuführen, nachdem das Dokument ready

$.noConflict(); 
jQuery(document).ready(function($){ 
    function InitializeTableSorter() { 
    var pagerOptions = { 
     //object definitions in here 
    }; 

    $("#transaction").tablesorter({ 
     //function stuff in here  
    }).tablesorterPager(pagerOptions); 
    } 
}); 
-1

Ich denke, das verursacht den Fehler .tablesorterPager (pagerOptions);

Versuchen mit diesem:

function InitializeTableSorter() { 
    var pagerOptions = { 
     //object definitions in here 
    }; 

    $("#transaction").tablesorter(pagerOptions); 
} 
0
jQuery(document).ready(function($){ 
    var pagerOptions = { 
     //object definitions in here 
    }; 

    $("#transaction").tablesorter({ 
     //function stuff in here  
    }).tablesorterPager(pagerOptions); 
}); 

Mit dieser Methode kann unten auf der Seite ist.

Verwandte Themen