javascript - 确保从未使用表单输入字段开头的 =

标签 javascript html regex forms vue.js

我正在寻找一种解决方案,以确保 = 字符不用于表单中的任何输入。

    <form>
        <input name="email" type="email" placeholder="Email" required="">
        <input name="last name" type="text" placeholder="Last Name">
        <input name="idnumber" type="number" placeholder="ID Number">
    </form>

我现在电子邮件和号码的类型字段应该可以防止这种情况发生,但我不确定这是否可以被黑客入侵。所以也许也对这些进行一些验证

我认为正则表达式可能是答案,它几乎可以正常工作。只需要调整一下(两个结果都应该只显示文本“test1”和“test2”,= 被剥离) https://regex101.com/r/faYiuB/1/

是否可以像我下面的第一次尝试那样使用正则表达式将其合并到输入字段中?

<input type="text" pattern="^[^\=]" required>

https://css-tricks.com/form-validation-part-1-constraint-validation-html/

最佳答案

您可以在 type="email"type="text" 中使用 [^=]+ 模式作为 pattern 属性正则表达式不适用于 type="number" 字段(并且您不能键入或粘贴 = 到数字字段中):

<form>
  <input name="email" pattern="[^=]+" type="email" placeholder="Email" required="">
  <input name="last name" pattern="[^=]+" type="text" placeholder="Last Name">
  <input name="idnumber" type="number" placeholder="ID Number">
  <input type="Submit">
</form>

pattern="[^=]+" 转换为 /^(?:[^=]+)$/ 正则表达式(使用 u Chrome 和 FireFox 中的修饰符)并匹配包含 1 个以上字符而不是 = 的字符串。

关于javascript - 确保从未使用表单输入字段开头的 =,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51071471/

相关文章:

javascript - 如何检索 css3 旋转中的 Angular ?

javascript - 如何在 Cypress 中使用 Chai-jQuery 的 Expect().to.match() 断言?改为使用同名的 BDD 断言

javascript - 如何在控制台日志中查看所选选项与其他选项的组合?

html - 表格内整列内的水平滚动

java - 带参数的 Pattern.compile()

javascript - 未终止的字符串文字/无效或意外的标记

javascript - 内联元素的边框

javascript - 可从网页调用的 Bash 脚本

Javascript RegEx 到 MASK 24 小时和分钟 (hh :mm)

python - django 中的 urls.py 正则表达式评估顺序是什么?