Jsvalidator в CakePHP неправильно корректирует текстовые поля - PullRequest
0 голосов
/ 26 мая 2011

Я использую CakePHP Javascript Validator , и все работает просто отлично, КРОМЕ проверки текстовых полей.

Проблема не в том, что он вообще не проверяется - но есть проблема с:

'rule' => array('between', 20, 500),

Эта ошибка возникает, если они вводят любые разрывы строк в любом месте текстовой области, независимо от общего количества символов или даже общего количества символов в первой строке.

Есть мысли относительно 1) почему это произошло и 2) как это исправить?

Изменить:

Регулярное выражение записывается в plugins / js_validate / views / helpers / validation.php, и, похоже, оно генерирует это:

Регулярное выражение, которое он выдает для проверки моего поля textarea, таково: \/^.{4,138}$\/

Я предполагаю, что проблема заключается в «.», Поскольку это «все, кроме новой строки» или что-то в этом роде. Чем я могу заменить его, чтобы разрешить переводы строки?

1 Ответ

1 голос
/ 22 июля 2011

Используйте модификатор s, который позволяет метасимволу точек соответствовать всем символам, включая символы новой строки. В вашем случае выражение будет выглядеть так:

/^.{4,138}$/s
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...