Селектор атрибутов jQuery с точкой - PullRequest
3 голосов
/ 03 февраля 2012

Я пытаюсь использовать селектор jQuery, который находит все поля ввода с определенным именем:

$('input[name=Filter']).click(function() {
    // do something
});

Это должно соответствовать следующим элементам:

<input type="radio" name="Filter" value="A" />
<input type="radio" name="Filter" value="B" />

Это работаетхорошо.У меня проблема в том, что мои имена динамически генерируются ASP.net MVC и имена имеют период:

<input type="radio" name="Parent.Filter" value="A" />
<input type="radio" name="Parent.Filter" value="B" />

Я попытался написать следующий селектор:

$('input[name=Parent.Filter]').click(function() {
});

Я получаю следующую ошибку: Uncaught Syntax error, unrecognized expression: [name=Parent.Filter]

Как мне написать это выражение, чтобы оно работало правильно?

Ответы [ 4 ]

10 голосов
/ 03 февраля 2012

Цитаты являются обязательными, и в этом случае они не будут работать без них.

$('input[name="Parent.Filter"]').click(function() {
});

Из справочника API :

значение Значение атрибута.Цитаты обязательны.

Вот jsFiddle , который демонстрирует это.

2 голосов
/ 03 февраля 2012

Это работает, вам просто нужно "" вокруг названия:

$('input[name="Parent.Filter"]').click(function() {
});
1 голос
/ 03 февраля 2012

На основании моего комментария к вопросу я могу подтвердить, что это работает ...

$('input[name="Parent.Filter"]').click(function() {
});

Рабочий пример здесь

0 голосов
/ 03 февраля 2012

Использование $("input[name='Parent.Filter']")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...