输入正则表达式模式不工作
HTML 5 Input regex pattern not working
由于某些原因,我在使用HTML5表单验证模式属性时遇到了问题。我试着匹配条件/[!?^$'''/{}]/g
。我试过逃避'
,用全局属性删除'
,删除[]
,几乎所有东西。所以在stackoverflow上总是有第一次发布问题。
简而言之,用户不应该输入以下'/${}
<form action="#">
<input type="text" required pattern="/[!?^$'''/{}]/g">
<button type="submit">Submit</button>
</form>
4.20 - 4.21 New export
->应该是有效的
4/20 - 2/21 $New {export}
->应该无效
这里是小提琴:http://jsfiddle.net/TV28A/
我已经尝试了上面所有的答案和任何工作(不知道如果我测试错了)。但以防万一:
我认为如果你想阻止只有'/${}
字符,这应该是正确的正则表达式[^'/''${}]*
<form action="#">
<input type="text" required pattern="[^'/''${}]*">
<button type="submit">Submit</button>
</form>
将^
字符作为第一个字符放入括号中,它否定了句子,因此[^'/''${}]*
表示字符串,不具有任何大小的/ ' $ { }
。
按照评论的要求分享jsFiddle
在使用pattern
属性时,您不需要将RegEx包含在/
中。此外,g
标志也是不必要的,因为表达式必须匹配整个输入字段,而不仅仅是其中的一部分。
这应该足以满足您的目的:
<form action="#">
<input type="text" required pattern="[!?^$'''/{}]">
<button type="submit">Submit</button>
</form>
相关文章:
- 数据属性仅在切换设备模式下工作
- 为什么我的JavaScript在Safari上的严格模式下不能正常工作
- 更改不在引导模式窗口中工作的月份和年份
- 推特Boostrap模式窗口-可拖动不工作
- 如何使引导模式正常工作
- 与未在发布模式下工作的子目录和区域绑定
- 为什么除了html5输入模式属性之外,这个简单的regex在任何地方都能工作
- 为什么我的UI应用程序嵌套在引导模式中时无法工作
- 代码在调试模式下工作
- 选中的单选按钮在jQuery模式对话框中不能正常工作
- bootstrap日期选择器轨道无法通过带有bootstrap模式的simple_form工作
- 我的滑块无法在自动模式下工作
- 事件发射器模式如何在Node,sockets.io中工作
- js不能在bs3ajax模式中工作
- 如何使Asp.net网站同时在IE 11(非可比模式)和IE 8中工作
- Eonasdan日期时间选择器没有'不能在联机模式下工作
- jQuery每5个工作小时重置一次颜色模式
- AJAX 在调试模式下工作,但不是实时的
- 代码仅在调试器模式下工作,断点位于 Consol.log否则不起作用
- config.fullPage = true;在 ckEditor 内联模式下无法正常工作.如何实现这一点