javascript - jQuery-selektor för inputfält med hakparenteser i namn-attributet
Jag försöker att välja detta element som har hakparenteser i namn-attributet:
<input type="text" name="inputName[]" value="someValue">
Jag har försökt detta (vilket inte fungerar):
$('input[inputName[]=someValue]')
och inte det här heller:
$('input[inputName[]=someValue]')
eller detta:
$('input["inputName[]"=someValue]')
REDIGERA: Som några av er har påpekat skulle $ ('input[inputName=someValue]') aldrig fungera. Det jag försökte göra var: $ ('input[name=inputName][value=someValue]'). (Men med [] i name-attributet).
Svar #1
Enligt jQuery-dokumentationen, försök detta:
$('input[inputName\\[\\]=someValue]')
[REDIGERA] Jag är dock inte säker på att det är rätt syntax för din selektor. Du vill förmodligen ha:
$('input[name="inputName[]"][value="someValue"]')
Svar #2
Du kan använda backslash för att citera "roliga" tecken i dina jQuery-väljare:
$('#input\\[23\\]')
För attributvärden kan du använda citattecken:
$('input[name="weirdName[23]"]')
Nu är jag lite förvirrad av ditt exempel; hur ser din HTML egentligen ut? Var dyker strängen "inputName" upp, särskilt?
redigera åtgärdat felaktighet; tack @Dancrumb
Svar #3
Syntaxen för attributväljare är [name=value] där name är attributnamnet och value är attributvärdet.
Så om du vill välja alla input-element med attributet name som har värdet inputName[]:
$('input[name="inputName[]"]')
Och om du vill kontrollera två attribut (här: name och value):
$('input[name="inputName[]"][value=someValue]')
