我在HTML中创建了一个包含名称字段的表单,我希望使用HTML pattern
属性进行验证。
我想允许任何字母(包括带有重音符号)以及 - 。 ,'和空间。 (在编辑中添加以澄清)
这是我的尝试:
Nome e Cognome: <input type="text" name="nome" required pattern="^[\p{L}\p{M} \-\.',]*$" placeholder="Mario Rossi">
但是,当我输入像John" Doe?
这样的无效数据时,表格不会引发错误。为什么呢?
答案 0 :(得分:0)
你的正则表达式看起来不是很正确,但如果不知道你的确切要求,你很难写出你想要的那个!
试试这个:/^[a-zÀ-ÿ ,.'-]+$/i
它将匹配名字和姓氏,并且只允许名字中常见的符号。
为此,您还需要将其放在<form>
(将其绑定到按钮)中。例如:
<form action="/submit-name/">
Nome e Cognome: <input type="text" name="nome" required pattern="^[A-Za-zÀ-ÿ ,.'-]+$" placeholder="Mario Rossi">
<input type="submit">
</form>
&#13;