Próbuję wybrać ten element, który ma nawiasy kwadratowe w atrybucie name:
<input type="text" name="inputName[]" value="someValue">
Próbowałem tego (co nie działa):
$('input[inputName[]=someValue]')
i to też nie:
$('input[inputName[]=someValue]')
albo to:
$('input["inputName[]"=someValue]')
EDYCJA: Jak niektórzy z was zauważyli, $('input[inputName=someValue]')
nigdy nie zadziałałoby. Co starałem się zrobić to: $('input[name=inputName][value=someValue]')
. (Ale z []
atrybutem nazwy).
Możesz użyć ukośnika odwrotnego, aby zacytować „śmieszne” postacie w selektorach jQuery:
Do wartości atrybutów możesz użyć cudzysłowów:
Teraz jestem trochę zdezorientowany twoim przykładem; jak dokładnie wygląda twój HTML? Gdzie w szczególności pojawia się ciąg „inputName”?
edytuj stałą boginię; dzięki @Dancrumb
źródło
<select name="foo[bar]">
stosując$('select[name=foo\\[bar\\]]')
jednak ja jestem w stanie to zrobić za pomocą$('select[name="foo[bar]"])
, ty drugą propozycję.Składnia selektora atrybutów to
[name=value]
gdziename
jest nazwa atrybutu ivalue
jest to wartość atrybutu.Więc jeśli chcesz wybrać wszystkie
input
elementy z atrybutemname
o wartościinputName[]
:A jeśli chcesz sprawdzić dwa atrybuty (tutaj:
name
ivalue
):źródło
Jeśli selektor jest zawarty w zmiennej, poniższy kod może być pomocny:
W tym przypadku poprzedzamy wszystkie znaki specjalne podwójnym odwrotnym ukośnikiem.
źródło
Po prostu oddziel go różnymi cytatami:
JQuery:
źródło