2010-12-17 23 views
1

Wenn ich meine Seite laden, die Jquery verwendet, erhalte ich folgende Fehlermeldung:jquery Fehler beim Start

Uncaught TypeError: Cannot call method 'call' of undefined 
jQuery.jQuery.fn.jQuery.ready test.html:282 
(anonymous function) test.html:15 
jQuery.jQuery.extend.ready 

Dies wird aufgespürt

ready: function(fn) { 
    // Attach the listeners 
    jQuery.bindReady(); 

    // If the DOM is already ready 
    if (jQuery.isReady) { 
     // Execute the function immediately 
     fn.call(document, jQuery); 
        ^^^^^^^^^^^^ 

    // Otherwise, remember the function for later 
    } else if (readyList) { 
     // Add the function to the wait list 
     readyList.push(fn); 
    } 

fn oben nicht definiert ist ... Es Ich kann kein anderes Symptom sehen, das mich auf das Problem hinweist. Ich verweise auf eine lokale Kopie von jquery.js.

<script src="js/jquery-1.4.4.js" type="text/javascript"></script> 

mit dem Google CDN hilft auch nicht .. Cant vorstellen, ich bin die erste Person, dies trifft ...

Jeder mit Zeiger einen Neuling zu helfen?

Vielen Dank im Voraus, Ja

+0

Veröffentlichen Sie den Quellcode Ihrer HTML-Seite, einschließlich aller Skripts, die Sie ausführen. Verwenden Sie neben jQuery eine andere JS-Bibliothek? –

+0

Wo und wie definieren Sie die Fn-Funktion als Fn übergeben? – Javi

Antwort

1

, was es Ihnen zu initialisieren sind versuchen? im Allgemeinen alles, was bereit, auf eine Seite getan werden muss, ist wie gemacht:

$(document).ready(function(){ 
    //your JS calls, functions, bindings, and whatever 


}); 
+0

Das war es ... Ich hatte meine Syntax falsch ... Ich hatte: – jas

+0

$ (Dokument) .ready (init()); – jas

2

wie ready Sieht sich ohne Argument (oder mit einem, der undefined ist) genannt wird.

+0

Danke für die wirklich schnelle und hilfreiche Beratung. Also habe ich herausgefunden, wo das Problem liegt. Immer noch nicht sicher, warum es passiert ... er Situation ist dies: – jas

1

Ich würde vermuten, dass Sie Code irgendwo auf Ihrer Seite äquivalent zu haben:

$(document).ready(undefined); 

Sie benötigen eine Funktion Verweis auf die bereit() Methode zu übergeben, wie in FatherStorm Antwort gezeigt. Wenn Sie einen Funktionsnamen übergeben, stellen Sie sicher, dass die Funktion in dem Bereich verfügbar ist, in dem Sie den Aufruf an ready() senden. Wenn Sie die Funktion inline definieren, überprüfen Sie Syntaxprobleme oder andere Fehler auf der Seite.

0

Vor kurzem habe ich den Fehler:

Uncaught TypeError: Cannot call method 'call' of undefined 

In meinem Fall habe ich entfernt eine meiner benutzerdefinierten Validator jQuery.validator.addMethod(), Aber ich vergaß es von Regeln zu entfernen.

$("##frmCreate").validate({ 
    rules: { 
     zip: {required: true, maxlength: 6, postalcode:true}, 

Im obigen Fall war Postleitzahl meine benutzerdefinierte Validator.

Ich hoffe, es kann anderen helfen ..