客户端表单验证轨道



问题:我的客户端rails表单输入格式验证无法按照regex的设置方式工作。

我有以下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/

正如您所看到的,我在模型端验证中做了一些更改,看看它是否有效。我试过其他一些事情,但都没有解决。

适用于我的模型端验证,但不适用于客户端。有什么需要我改变的吗?

我正在进行客户端验证,这样我就可以在不需要flash或重定向的情况下为单个text_field生成自定义消息。任何人,因为我有一个嵌套的表单,深度为3,所以我在将警报显示为flash时遇到问题。现在,无需使用普通flash重新加载页面。不确定问题是什么,但这似乎是一个很好的选择。

如何修复此问题,使regex与输入text_field一起工作?

使用单引号而不是双引号似乎可以达到目的。

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

不知道为什么我以前没有尝试过,因为我在过去的双与单中遇到过类似的问题

最新更新