【发布时间】:2019-01-16 04:59:53
【问题描述】:
问题:我的客户端rails表单输入格式验证无法正常工作。
我有以下 Rails 表单输入:
<%= 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_field 提供自定义消息,而无需 Flash 或重定向。任何人,因为我有一个嵌套形式 3 深度,所以我遇到了让警报显示为 flash.now 的问题,而无需使用普通 flash 重新加载页面。不确定问题是什么,但这似乎是一个不错的选择。
如何解决此问题,以便正则表达式与输入 text_field 一起使用?
【问题讨论】:
-
你在使用 jquery form-validation 吗?
-
我相信这是 html 的内置功能。当我使用像“[0-9]”这样简单的东西时,它只适用于验证数字。除了常规的正则表达式之外,是否需要某种格式?
标签: ruby-on-rails ruby regex format