Button mit onklick-Funktion

CreativPur

Erfahrenes Mitglied
Ich stehe vor folgenden Problem.

Nach dem anklicken des Button soll ein div_Inhalt eingeblendet werden. Der Button dient für eine vorhergegangene Filterfunktion wo die eingegebenen Werte gespeichert werden.

Das DIV-Element wird per css auf
Code:
    .box{
        display: none;
    }
gesetzt.
Das DIV-Element hat folgenden Code:
Code:
<div class="box modelsuche ">
blablabla
</div>

Der Button:
Code:
<button type="submit" class="btn btn-success btn-xs button_modelsuche" name="modelsuche">Model suchen</button>

Das Script, welches nicht funktioniert ????
Code:
$(document).ready(function(){
    $("button").onclick(function(){
            if($(this).attr("name")=="modelsuche"){
                $(".box").not(".modelsuche").hide();
                $(".modelsuche").show();
            }
           
        });
    })

Ich komme irgendwie nicht weiter.. Worin liegt der Fehler ?
 
Was das jetzt mit PHP zu tun haben soll, bleibt wieder mal Dein Geheimnis :D

Einen onclick-Event gibt es so in jQuery nicht.

Entweder
Code:
$("button").click(function(){...})
oder
Code:
$("button").on("click", function(){...})
 
Hi,
zur Ergänzung, .onclick ist natives Javascript.
Das kannst du als Attribut direkt im HTML verwenden
HTML:
<button onclick="dein Script">FooBar</button>
>Dies ist die schlechteste Wahl. Da der Quellcode unnötig aufgeblasen wird und schlechter zu lesen ist.
Außerdem mischt du dann JA mit HTML. Da ist das Debugging fast nicht möglich, zumindest wird es immens erschwert.
Innerhalb von Javascript
Javascript:
object.onclick=function(){
   dein Script
};
oder
Javascript:
object.addEventListener("click", dein Script);
In jquery ist .click() die shorthandvariante von .on('click', function(){}).
.click(function(){}); ist die bessere Wahl da jQuery intern dafür addEventListener verwendet und damit dem standard event registration model folgt.
Wie es sich jetzt mit der Performance verhält weiß ich nicht. Aber ich denke mal das es da auch Unterschiede gibt.

Viele Grüße
 
Zurück