Javascript onClick event nicht gefeuert wird.

Ich versuche, Javascript zu verwenden, um die Kontrolle über eine web-form. Hier ist alle meine Javascript-code und was ich versuche zu erreichen Hinzugefügt, um es als gut.

$(document).ready(function(){
    function loadPage(url){
        $(".body").fadeOut(400, function(){
            $(".body").load(url);
            $(".body").fadeIn(400);
        });
    }
    loadPage("pages/login.html");

    $("#button").on("click", function(){
        var pageTo = this.name;
        loadPage("pages/" + pageTo + ".html");
    });
});

Wird der code noch mehr komplexe Dinge später auf, aber es schadet auch nicht, die oben genannten.

Meine form sieht wie folgt aus

<FORM>
    <SPAN class='header'>Login</SPAN><BR/>
    <LABEL for='username' class='loginLabel'>Username</LABEL>
    <INPUT type='text' id='username' name='username' value='' />
    <LABEL for='password'class='loginLabel'>Password</LABEL>
    <INPUT type='password' id='password' name='password' value='' />
    <INPUT type='hidden' name='process' value='login' />
    <INPUT type='button' value='Login' name='index' id='button' />
</FORM>

Eine einfache login-Formular, aber der text erscheint nicht in der Konsole angezeigt, wenn die Schaltfläche geklickt wird. Ich don 'T wollen, verwenden Sie die Schaltfläche "senden" und den JQuery .submit () - event, denn ich möchte den gleichen code für die Arbeit mit mehreren Arten von Dingen, einschließlich der links, und eventuell andere Elemente.

Dies ist nicht, wie binden Sie die event-Handler mit jQuery. Ich schlage vor, einen Blick auf api.jquery.com/category/events.
Ich habe. Es hat nicht funktioniert. Wenn Sie Lesen der anderen Antworten, die ich Kommentare, und keiner von Ihnen schien zu funktionieren.
Dann gibt es etwas, was Sie nicht sagen uns (vielleicht Probleme mit dem anderen code auf der eigenen Seite) , weil es funktioniert: jsfiddle.net/RbzAR.
Ich gehe davon aus pages/login.html enthält das Formular? Im moment binden Sie die event-handler, die das element noch nicht existiert, so ist es nicht gebunden werden kann. Binden Sie die event-handler nachdem Sie enthalten den Inhalt oder die Nutzung event-delegation.
Haben Sie einen Blick auf api.jquery.com/on, Abschnitt Direkte und Delegierte Ereignisse. Auch die in diesem Zusammenhang nützlich: quirksmode.org/js/events_order.html.

InformationsquelleAutor legobear154 | 2012-09-01

Schreibe einen Kommentar