2009-07-31 9 views
2

MY javascript: Mis à jour à nouveau.Création d'un tableau Javascript de plusieurs classes CSS affectées à un élément avec jQuery

 $('.calc').change(function(){ 
      var classArray = $(this).attr('class').split(','); 

      $.each(classArray, function(){ 
       alert(classArray); 
       }); 
      }); 

Et l'entrée:

<input type="text" class="calc R#r# C#i#" /> 

Les signes livre sont des variables, j'utilise ColdFusion.

Ce que je dois être capable de faire est de prendre avec succès chaque classe et de les placer dans un tableau. De cette façon, je peux utiliser cela pour faire les calculs requis pour l'ensemble de la table.

L'aide serait appréciée.

Merci

Répondre

5

Vous pouvez simplement split la valeur d'attribut de classe, en utilisant l'espace comme séparateur:

$('.calc').change(function(){ 
    var classArray = $(this).attr('class').split(' '); 
}); 

Edit: Je pense que vous voulez faire.

$('.calc').change(function(){ 
    var classArray = $(this).attr('class').split(' '); 

    $.each(classArray, function(){ 
    alert(this); 
    }); 
}); 

Essayez l'exemple this.

+0

Ne fonctionne pas. Je retourne toujours seulement 1 objet de tableau. –

+0

Cela m'a valu de renvoyer 3 objets, mais tous étaient calc R1 C1. Ce que j'ai besoin d'afficher est: calc dans sa propre boîte, R1 dans sa propre boîte, et C1 dans sa propre boîte. –

+0

Ouais c'est fait. Merci! Il me restait l'autre dans le code et ça cassait, mais ça a marché! –

0

La réponse de CMS fonctionne vraiment pour moi. Je doute que ce soit un problème de navigateur, mais je suppose que c'est une possibilité?

Questions connexes