Как я могу использовать синтаксис имени jquery с движком бритвы? - PullRequest
0 голосов
/ 28 ноября 2011

У меня есть веб-страница, которую я конвертирую в бритву. У меня есть этот код, который сейчас не работает:

if ($("input[@name='exerciseRB']:checked").val() == 'New') {
    $("#newExercise").show();
    $("#existingExercise").hide();
}
else {
    $("#newExercise").hide();
    $("#existingExercise").show();
}

где кажется, что @ (в @name) является частью моей бритвы mvc (в отличие от простого выбора селектора jquery. Ошибка: «Не удается разрешить имя символа»

Есть ли здесь предложение, чтобы jquery и бритва работали вместе?

Ответы [ 2 ]

4 голосов
/ 28 ноября 2011

В этом очень специфическом случае вы используете синтаксис XPath @ для атрибутов, который устарел в jQuery (полностью удален в jQuery ≥ 1.3, поэтому он не будет работать в более новых версиях).

Решением здесь является удаление @ и использование синтаксиса селектора атрибутов CSS:

if ($("input[name='exerciseRB']:checked").val() == 'New') {

Если вам нужно экранировать любые другие символы @, удвойте их, чтобы вы получили @@.

0 голосов
/ 28 ноября 2011

Я полагаю, что @@ будет, как избежать символа @ в бритве:

if ($("input[@@name='exerciseRB']:checked").val() == 'New') {
...