Я пытаюсь выбрать этот элемент, который имеет квадратные скобки в атрибуте имени:
<input type="text" name="inputName[]" value="someValue">
Я попробовал это (который не работает):
$('input[inputName[]=someValue]')
и ни один не делает это:
$('input[inputName[]=someValue]')
или это:
$('input["inputName[]"=someValue]')
Править: Поскольку некоторые из Вас указали, $('input[inputName=someValue]')
никогда не работал бы. То, что я пытался сделать, было: $('input[name=inputName][value=someValue]')
. (Но с []
в атрибуте имени).
Согласно документации jQuery , попробуйте следующее:
$('input[inputName\\[\\]=someValue]')
{{ 1}}
[РЕДАКТИРОВАТЬ] Однако я не уверен, что это правильный синтаксис для вашего селектора. Вы, вероятно, захотите:
$('input[name="inputName[]"][value="someValue"]')
Синтаксис селектора атрибута [name = value]
, где name
- это имя атрибута, а value
- это значение атрибута.
Итак, если вы хотите выбрать все элементы input
с атрибутом name
, имеющим значение inputName []
:
$('input[name="inputName[]"]')
И если вы хотите проверить для двух атрибутов (здесь: name
и value
):
$('input[name="inputName[]"][value=someValue]')
Вы можете использовать обратную косую черту для цитирования "забавных" символов в ваших селекторах jQuery :
$('#input\\[23\\]')
Для значений атрибутов вы можете использовать кавычки:
$('input[name="weirdName[23]"]')
Я немного смущен вашим примером; как именно выглядит ваш HTML? Где, в частности, отображается строка "inputName"?
edit исправлено bogosity; спасибо @Dancrumb