【问题标题】:Use regex to do validation in g:TextField使用正则表达式在 g:TextField 中进行验证
【发布时间】:2014-03-28 23:40:21
【问题描述】:

我正在开发一个 grails 应用程序,并希望能够对 g:textField 进行验证。我只是想确保数字是数字,单词是单词。我想避免通过 JS 来做,但如果这是唯一的方法,那就这样吧。这是我正在尝试的。

<g:textField type="number" pattern="^(?:[-+]?[1-9]\d*|0)?(?:\.\d+)?\$" class="form-control" name="hours" value="${hours}"/></div>

有什么建议或方向吗?还是我应该直接通过 JS 来做?

【问题讨论】:

  • 我不明白“确保数字是数字,单词是单词”。 sn-p 中的正则表达式仅用于数字。单词如何适应?他们在这一字段中输入数字字词?是什么触发了数字检查与单词检查?请提供更多信息。
  • 如果你想在服务器端使用正则表达式进行验证,它有一个约束:grails.org/doc/latest/ref/Constraints/matches.html
  • 您好,很抱歉延迟回复。所以更具体地说,有 5 个文本字段,4 个应该包含字符和单词,1 个只能包含数字和小数点。此处提供的示例适用于数字字段。

标签: javascript regex grails gsp


【解决方案1】:

所以我能够找出正确的正则表达式。我遇到的问题是转义字符及其互操作方式。

<g:textField type="number" pattern="^[0-9]+\\s*\$|^[0-9]+\\.?[0-9]+\\s*\$" required="true" class="form-control" name="hours" value="${deliverable.estimatedHours}"/>

这将检查输入字符串的格式并确保它只包含数字。

【讨论】:

  • 嗨,你能帮我解决一下我的正则表达式吗:(\$\{(.*?)\}$)|(^([0-9][0-9]?|1[0 -9][0-9]|200)$) 这在 gsp 标签中不起作用,但在普通 html 标签中起作用
猜你喜欢
  • 2020-02-18
  • 2021-10-17
  • 2014-12-25
  • 2014-04-21
  • 2020-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多