在客户端上验证的url输入字段,但没有其他字段是

东边发展

我有一个Rails应用程序,使用Devise进行用户注册/管理。

在我的用户模型中,我具有以下内容:

validates :first, presence: true
validates :last, presence: true
validates :email, presence: true, format: {with: VALID_EMAIL_REGEX}, uniqueness: {case_sensitive: false}
validates :url, format: {with: NO_SPACES_REGEX}, presence: true

填写表单时,如果我没有填写url字段并提交表单,则会收到以下消息(气球指向url输入框):

请输入一个URL。

这发生在客户端。如果在表单中填写了URL字段,并在其他任何必填字段中填写了表单,则该表单将提交,然后我在一个单独的红色框中收到消息,要求我输入缺少的值。

知道为什么url字段是唯一一个在本地验证的,预先提交表单但没有其他表单的字段吗?

关于此字段的唯一其他独特之处在于,它以以下形式分配了一个值:

<div class="control-group">
  <div class="control-label"><%= f.label :url, URL_STR %></div>
  <div class="controls"><%= f.url_field :url, :value => "http://", :class => "request-text-line" %></div>
</div>

其他字段均未分配任何值。

丹尼

原因在于字段类型如果在浏览器中查看源代码,您将看到类型为“ url”。hltm5中有许多类型可以触发客户端验证。部分列表是电子邮件,URL,数字,电话,日期,但还有更多。您通过使用url_field触发了此操作,这导致类型为“ url”,从而导致客户端验证。普通的文本字段当然不会这样做(不能这样做)。但是,例如,对于您的电子邮件字段,您可以使用email_field这样类似

如果您想了解更多信息,可以参考http://www.the-art-of-web.com/html/html5-form-validation/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Meteor.user与客户端上的其他字段

来自分类Dev

Meteor.user与客户端上的其他字段

来自分类Dev

AngularJS客户端验证:是否根据其他字段更改验证要求?

来自分类Dev

angularjs其他表单验证规则(非输入字段验证)

来自分类Dev

淘汰赛验证-输入验证其他字段

来自分类Dev

HTML 输入验证(Angular)依赖于其他字段

来自分类Dev

如何在没有空的其他填充字段的情况下验证 Laravel

来自分类Dev

基于其他字段的验证

来自分类Dev

yup验证来验证formki字段是否以其他输入字段的值开头

来自分类Dev

jQuery对照其他动态添加的输入字段验证动态添加的输入字段

来自分类Dev

jQuery对照其他动态添加的输入字段验证动态添加的输入字段

来自分类Dev

在客户端验证MVC字段

来自分类Dev

具有其他布尔字段的MVC远程验证

来自分类Dev

禁用元素,直到其他输入字段有效

来自分类Dev

没有名称的Angularjs表单验证输入字段

来自分类Dev

没有名称的Angularjs表单验证输入字段

来自分类Dev

验证复制的输入字段中没有相同的信息

来自分类Dev

Yii2对输入字段实施客户端唯一验证

来自分类Dev

填写 1 个输入字段时禁用所有其他输入字段不起作用

来自分类Dev

没有进行其他搜索的Lucene字段

来自分类Dev

发送带有伪造IP的curl-Request并在其他客户端上捕获响应?

来自分类Dev

其他字段触发的AngularJS表单验证

来自分类Dev

CSS:使选择字段的宽度和高度与所有其他输入字段相同?

来自分类Dev

当此字段更改时,AngularJS会验证其他字段

来自分类Dev

客户端上的 Grails 表单验证

来自分类Dev

如何在不违反其他输入字段验证的情况下传递必需的参数

来自分类Dev

仅当其他simple_form字段等于某些输入时才验证存在吗?

来自分类Dev

停止jQuery表单验证以重置由其他JavaScript填充的typeahead.js输入字段

来自分类Dev

根据其他字段的输入禁用字段

Related 相关文章

  1. 1

    Meteor.user与客户端上的其他字段

  2. 2

    Meteor.user与客户端上的其他字段

  3. 3

    AngularJS客户端验证:是否根据其他字段更改验证要求?

  4. 4

    angularjs其他表单验证规则(非输入字段验证)

  5. 5

    淘汰赛验证-输入验证其他字段

  6. 6

    HTML 输入验证(Angular)依赖于其他字段

  7. 7

    如何在没有空的其他填充字段的情况下验证 Laravel

  8. 8

    基于其他字段的验证

  9. 9

    yup验证来验证formki字段是否以其他输入字段的值开头

  10. 10

    jQuery对照其他动态添加的输入字段验证动态添加的输入字段

  11. 11

    jQuery对照其他动态添加的输入字段验证动态添加的输入字段

  12. 12

    在客户端验证MVC字段

  13. 13

    具有其他布尔字段的MVC远程验证

  14. 14

    禁用元素,直到其他输入字段有效

  15. 15

    没有名称的Angularjs表单验证输入字段

  16. 16

    没有名称的Angularjs表单验证输入字段

  17. 17

    验证复制的输入字段中没有相同的信息

  18. 18

    Yii2对输入字段实施客户端唯一验证

  19. 19

    填写 1 个输入字段时禁用所有其他输入字段不起作用

  20. 20

    没有进行其他搜索的Lucene字段

  21. 21

    发送带有伪造IP的curl-Request并在其他客户端上捕获响应?

  22. 22

    其他字段触发的AngularJS表单验证

  23. 23

    CSS:使选择字段的宽度和高度与所有其他输入字段相同?

  24. 24

    当此字段更改时,AngularJS会验证其他字段

  25. 25

    客户端上的 Grails 表单验证

  26. 26

    如何在不违反其他输入字段验证的情况下传递必需的参数

  27. 27

    仅当其他simple_form字段等于某些输入时才验证存在吗?

  28. 28

    停止jQuery表单验证以重置由其他JavaScript填充的typeahead.js输入字段

  29. 29

    根据其他字段的输入禁用字段

热门标签

归档