Obtenir le nom de la classe de l'élément avec onclick

En raison de différentes raisons, je ne peux PAS utiliser $ ('. Class'). Cliquez ou sur ('clic', fonction …)

Je dois donc utiliser l'événement onclick = "" de l'élément html.

Existe-t-il un moyen de découvrir la classe à partir de l'élément où l'onclick se produit?

Et le violon http://jsfiddle.net/Aw8Rb/

Merci pour votre aide!

<!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-1.9.1.js"></script> </head> <body> <span class="classic one" onclick="someFunction('one')">CLICK HERE</span> <span class="classic two" onclick="someFunction('two')">CLICK HERE</span> <span class="classic three" onclick="someFunction('three')">CLICK HERE</span> <span class="classic four" onclick="someFunction('four')">CLICK HERE</span> <script type="text/javascript"> function someFunction(abc) { alert(abc); alert($(this).attr('class')); } </script> </body> </html> 

Vous devez passer this référence lors de l'appel de la fonction

essaye ça

 <span class="classic one" onclick="someFunction(this,'one')">CLICK HERE</span> ...... //same for others 

Jquery

 function someFunction(obj,abc) { alert(abc); alert($(obj).attr('class')); } 

Avec javascript simple (sans Jquery)

 function someFunction(obj,abc) { alert(obj.className); } 

Violons ici

Un mode non jquery en utilisant this.className ici .

Si vous ajoutez l'élément à l'argument, vous pouvez l'utiliser dans votre fonction pour récupérer toutes les données que vous souhaitez
Essaye ça:

  <span class="classic one" onclick="someFunction('one',this)">CLICK HERE</span> <span class="classic two" onclick="someFunction('two',this)">CLICK HERE</span> <span class="classic three" onclick="someFunction('three',this)">CLICK HERE</span> <span class="classic four" onclick="someFunction('four',this)">CLICK HERE</span> <script type="text/javascript"> function someFunction(abc,obj) { alert(abc); alert($(obj).attr('class')); } </script> 

DEMO

À partir de jsfiddle vous avez fourni, modifiez votre code comme ci-dessous et vous obtiendrez la réponse (classe) correctement.

 <span class="classic four" onclick="someFunction(this,'four')">CLICK HERE</span> function someFunction(obj,abc) { alert(abc); alert(obj.getAttribute('class')); } 

Passez this comme premier argument et accédez-le en fonction avec obj . Ensuite, vous pouvez utiliser obj.getAttribute('class')

Pass this.className comme paramètre … par ex.

<input type="button" onclick="abc(this.className)" />

Ajoutez this comme argument au gestionnaire d'événements en ligne:

 <span class="classic one" onclick="someFunction(this,'one')">CLICK HERE</span> 

Ensuite, utilisez la propriété className de l'élément pour obtenir le nom de la classe

 function someFunction(e,abc) { console.log(this); alert(e.className); } 

Exemple de travail http://jsfiddle.net/Aw8Rb/8/

 onclick="javascript:someFunction(this)" function someFunction(obj) { console.log($(obj).attr('class')); } 

Vous obtiendrez les deux classes dans l'ordre de l'écriture.