квадратные скобки

codeception Form field by Label or CSS element with ... was not found. -- ошибка

В моем случае не мог взять селекторы типа (там присутствуют квадратные скобки):

"#login-form input[name=LoginForm\\[username\\]]"

хотя jquery норм. работает с аналогичными.

Решение

Использовать кавычки вместо слэшей -- например, такие селекторы сработают нормально (см. те, где встречаются двойные квадратные скобки):

jquery Экранирование квадратных скобок массива в селекторе

Пусть у нас имя элемента формы (поля) задано в виде массива, ну или элемента массива, скажем такое:

User[bind_type]

Тогда экранировать квадратные скобки в селекторе можно с помощью двойных обратных слешей, например так:

$('input[name=User\\[bind_type\\]]').change(function(){
    var value = $( 'input[name=User\\[bind_type\\]]:checked' ).val();
    alert(value);
    });  
});

Регулярные выражения Квадратные скобки -- что они означают

Квадратные скобки объединяют группу символов -каждый из которых является вариантом (то есть это не последовательность, а именно группа) -
например выражение

[abc]{3,}

означает что мы хотим найти строку где три раза и более встречается последовательность, к которую входят какие-то из букв a и/или b и/или c
то есть нам подойдут последовательности вроде:

abc
aaa
aab
aaabcc

и т.д.

Subscribe to RSS - квадратные скобки