Ich versuche, dieses Element auszuwählen, das im Namensattribut eckige Klammern hat:
<input type="text" name="inputName[]" value="someValue">
Ich habe es versucht (was nicht funktioniert):
$('input[inputName[]=someValue]')
und das auch nicht:
$('input[inputName[]=someValue]')
oder dieses:
$('input["inputName[]"=someValue]')
EDIT: Wie einige von Ihnen betont haben, $('input[inputName=someValue]')
würde nie funktionieren. Was ich versuchte zu tun war : $('input[name=inputName][value=someValue]')
. (Aber mit []
im Namensattribut).
Sie können Backslash verwenden, um "lustige" Zeichen in Ihren jQuery-Selektoren zu zitieren:
Für Attributwerte können Sie Anführungszeichen verwenden:
Jetzt bin ich ein wenig verwirrt von Ihrem Beispiel; Wie genau sieht Ihr HTML aus? Wo wird insbesondere die Zeichenfolge "inputName" angezeigt?
feste Bogosität bearbeiten ; danke @Dancrumb
quelle
<select name="foo[bar]">
unter Verwendung$('select[name=foo\\[bar\\]]')
jedoch ich bin die Lage , dies zu tun mit$('select[name="foo[bar]"])
, du zweiten Vorschlag.Die Attributselektor Syntax ist ,
[name=value]
woname
der Attributname undvalue
der Attributwert.Wenn Sie also alle
input
Elemente mit dem Attribut auswählen möchten, dasname
den Wert hatinputName[]
:Und wenn Sie nach zwei Attributen suchen möchten (hier:
name
undvalue
):quelle
Wenn der Selektor in einer Variablen enthalten ist, kann der folgende Code hilfreich sein:
In diesem Fall stellen wir allen Sonderzeichen einen doppelten Backslash voran.
quelle
Trennen Sie es einfach mit verschiedenen Anführungszeichen:
JQuery:
quelle