2010-09-06 12 views

Répondre

0

Si rien d'autre qu'une regex va faire, vous pouvez essayer d'utiliser .filter():

$('#somecontainer input').filter(function(){ 
    return this.name.match(/a|b|c/); 
}); 

Une autre des nombreuses façons de procéder consiste à assembler un objet jQuery avec .add(). Et si vous voulez vraiment dire contient plutôt que est égal à, ne pas oublier d'utiliser name*=a.

$('input[name*=a]') 
    .add('input[name*=b]') 
    .add('input[name*=c]') 
    .add('<p>something</p>') // you can .add() almost anything. useful. 
+0

La partie regex est très intéressante. Compte tenu des indices, j'ai trouvé ce plugin: http://james.padolsey.com/javascript/regex-selector-for-jquery/ – Rainmasterrr

1
$("input[name='a'],input[name='b'],input[name='c']") 

Si cette chaîne semble trop longue ou redondante, vous pouvez construire le sélecteur comme:

var names = ['a','b','c']; 
var selector = []; 
for (var i=0; i<names.length; i++) { 
    selector.push("input[name='" + names[i] + "']"); 
} 

$(selector.join(',')) 
+0

Pour référence, c'est un exemple du sélecteur multiple. Voir l'API du sélecteur jQuery, http://api.jquery.com/category/selectors/ – michaeltwofish

Questions connexes