J'essaie de sélectionner cet élément qui a des crochets dans l'attribut de nom:
<input type="text" name="inputName[]" value="someValue">
J'ai essayé ceci (qui ne fonctionne pas):
$('input[inputName[]=someValue]')
et cela non plus:
$('input[inputName[]=someValue]')
ou ca:
$('input["inputName[]"=someValue]')
EDIT: Comme certains d'entre vous l'ont souligné, $('input[inputName=someValue]')
ne fonctionnerait jamais. Ce que je voulais faire était: $('input[name=inputName][value=someValue]')
. (Mais avec []
dans l'attribut name).
Vous pouvez utiliser une barre oblique inverse pour citer des caractères "amusants" dans vos sélecteurs jQuery:
Pour les valeurs d'attribut, vous pouvez utiliser des guillemets:
Maintenant, je suis un peu confus par votre exemple; à quoi ressemble exactement votre HTML? Où apparaît la chaîne "inputName" en particulier?
modifier la bogosité fixe; merci @Dancrumb
la source
<select name="foo[bar]">
utilisant,$('select[name=foo\\[bar\\]]')
mais je suis capable de le faire en utilisant$('select[name="foo[bar]"])
, votre deuxième suggestion.La syntaxe du sélecteur d'attribut correspond à l'
[name=value]
emplacementname
du nom de l'attribut et àvalue
la valeur de l'attribut.Donc, si vous souhaitez sélectionner tous les
input
éléments avec l'attributname
ayant la valeurinputName[]
:Et si vous souhaitez vérifier deux attributs (ici:
name
etvalue
):la source
Si le sélecteur est contenu dans une variable, le code ci-dessous peut être utile:
Dans ce cas, nous préfixons tous les caractères spéciaux avec une double barre oblique inverse.
la source
Séparez-le simplement avec des guillemets différents:
JQuery:
la source