Je suis relativement nouveau dans l'implémentation de JQuery dans l'ensemble d'un système, et j'en profite.Appel de la méthode jQuery à partir de l'attribut onClick en HTML
J'ai rencontré un problème que j'aimerais trouver la résolution correcte pour.
Voici un exemple simple de cas de ce que je veux faire:
J'ai un bouton sur une page, et l'événement click je veux appeler une fonction jquery je l'ai défini.
Voici le code que je l'ai utilisé pour définir ma méthode (Page.js):
(function($) {
$.fn.MessageBox = function(msg) {
alert(msg);
};
});
Et voici ma page HTML:
<HTML>
<head>
<script type="text/javascript" src="C:\Sandpit\jQueryTest\jquery-1.3.2.js"></script>
<script language="javascript" src="Page.js"></script>
</head>
<body>
<div class="Title">Welcome!</div>
<input type="button" value="ahaha" onclick="$().MessageBox('msg');" />
</body>
</HTML>
(Le code ci-dessus affiche le bouton, mais je ne fais rien.)
Je suis conscient que je pourrais ajouter l'événement click dans l'événement document prêt, mais il semble plus facile à mettre à la place de mettre les événements dans l'élément HTML à la place. Cependant, je n'ai pas trouvé un moyen de le faire.
Existe-t-il un moyen d'appeler une fonction jquery sur un élément de bouton (ou n'importe quel élément d'entrée)? Ou y a-t-il une meilleure façon de faire cela?
Merci
EDIT:
Merci pour vos réponses, il semble que je ne suis pas en utilisant JQuery correctement. J'aimerais vraiment voir un exemple d'un système utilisant JQuery de cette façon et comment les événements sont gérés. Si vous connaissez des exemples pour le démontrer s'il vous plaît faites le moi savoir. Mon objectif sous-jacent pour l'utilisation de JQuery est de simplifier et de réduire la quantité de javascript requise pour une application Web à grande échelle.
Ceci est un exemple de fonction, pour démontrer le problème. – Russell
OK .. J'ai mis à jour avec un exemple qui fonctionne en utilisant votre méthode préférée - à la fois scoped ou non. – Dexter
Merci @Dexter, cela a bien fonctionné :) Note version 1.4.2 fonctionne, tandis que 1.3.2 ne fonctionnera pas. – Russell