我有一个输入框,用户可以在其中输入名字和姓氏。我使用了html5模式进行验证。
但问题是当你把“西蒙”放到那时它很好但如果你写“西蒙西蒙”那么它不是(可能问题在于两个单词之间的空格)。我希望输入框允许两者
1.Username
2.姓名。
我的代码是
<input id="login_input_username" pattern="[a-zA-Z]{2,64}" class="login_input" type="text" name="user_full_name" onfocus="this.value=''" onblur="(this.value=='')? this.value='Firstname lastname':this.value;" value="Firstname lastname" required />
答案 0 :(得分:7)
1。什么是名字?你是说一个给定的名字?如果是这样,请记住,只有一部分全球人口将姓氏写为姓氏。你真的应该使用术语“给定名称”和“姓氏”。想想»艾未未« - 姓氏是“艾”。
2。名称选项太多了。 [a-zA-Z ]
甚至没有涵盖所有北美或欧洲的名字(想想»O'Doyle«)。系列名称也可能包含空格字符(如“Mac Amhlaidh”中所示)。拉丁语,法语,西班牙语或德语名称与口音或变音符号一起使用?那些非拉丁名字怎么样?你知道ВладимирПутин?
3。您确实应该使用两个不同的输入字段。 不要在不规则之类的人身上使用正则表达式。