Рельсы проверки формы на стороне клиента - PullRequest
0 голосов
/ 16 января 2019

Проблема: Проверка формата ввода моего клиентского рельса не будет работать при настройке регулярного выражения.

У меня есть следующие формы ввода:

<%= form.text_field :twitter_link, 
    class: "form-control", 
    required: true, 
    pattern: "^(?:https?:\/\/)?(?:(?:www|m)\.)?twitter\.com\/\w+\/status\/\d+(?:\/\/?)?$", 
    title: "Twitter Comment URL" %>

Когда я ввожу правильный формат, он не будет проверен, и появится сообщение «введите правильный формат».

Следующее регулярное выражение в моей модели действует для параметра:

/\A^(?:https?:\/\/)?(?:(?:www|m)\.)?twitter\.com\/\w+\/status\/\d+(?:\/\/?)?\z/

Как вы можете видеть, я сделал несколько изменений со стороны моей модели, чтобы проверить, будет ли она работать. Я пробовал несколько других вещей, но ничего не решил.

Работает нормально для проверки моей модели, но не работает на стороне клиента. Что-то мне нужно изменить, чтобы это работало?

Я делаю проверку на стороне клиента, чтобы у меня было специальное сообщение для одного поля text_ без необходимости прошивки или перенаправления. Любой, кто, поскольку у меня есть вложенная форма глубиной 3, у меня возникают проблемы с появлением оповещения в виде flash.now без необходимости перезагружать страницу, используя обычную флэш-память. Не уверен, в чем проблема, но это, кажется, хорошая альтернатива.

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

1 Ответ

0 голосов
/ 16 января 2019

Использование одинарных кавычек вместо двойных, кажется, помогает.

<%= form.text_field :twitter_link, 
    class: "form-control", 
    required: true, 
    pattern: '^(?:https?:\/\/)?(?:(?:www|m)\.)?twitter\.com\/\w+\/status\/\d+(?:\/\/?)?$', 
    title: "Twitter Comment URL" %>

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

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