【问题标题】:Eliminate Text Bubble Error On SilverStripe 3 Forms消除 SilverStripe 3 表单上的文本气泡错误
【发布时间】:2013-09-05 23:26:59
【问题描述】:

由于某种原因,我在同一个 SS 3 表单上收到了两种不同类型的错误消息,如引用的屏幕截图所示。如何摆脱电子邮件字段上的文本气泡样式错误消息,让它们看起来都像名称字段上的错误框?

截图:http://d.pr/i/ThmL

鲍勃

【问题讨论】:

  • 左边的错误信息是javascript验证,右边的错误信息是浏览器验证。出现右侧错误是因为该字段被标记为电子邮件,并且您没有输入有效的电子邮件地址。但是 javascript 不检查字段是否正确填写,它只检查必填字段是否为空。您是使用自己的 javascript 验证,还是让 Silverstripe 设置 javascript 验证?
  • 这是SS的JS验证,不是我的。我只想使用 JS 验证(在左侧)并停止浏览器的验证——这就是为什么我认为 novalidate 是票。如果没有验证,我该如何关闭浏览器?
  • 与其尝试关闭浏览器验证,我建议尝试获取 javascript 验证以检查输入是否为有效的电子邮件地址。无论是让 Silverstripe javascript 工作,还是阻止该 javascript 并使用您自己的 javascript 验证器。

标签: forms validation silverstripe


【解决方案1】:

在 SilverStripe 3.0/1 中,它启用了 HTML5 所需属性的使用,Web 浏览器会选择这些属性并进行自己的验证(您已经看到了)。

如果您想停止浏览器行为,请从 SilverStripe 提供的标记中删除所需的属性

TextField::create('MyTextField')->setAttribute('required', false)

这仍然会使 PHP 验证中需要表单字段,但会禁用浏览器弹出窗口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-30
    • 2020-04-20
    • 2013-09-14
    • 2018-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多