这听起来像一个重复的线程,但它不是(据我搜查:D)。Javascript - 验证名称
<body>
Player 1, enter name: <input type="text" id="P1_NAME"> <a id="P1_NAMEERROR"></a>
</body>
<script>
// Validate names
document.getElementById("P1_NAME").onkeypress = function() {
var P1_NAME = document.getElementById("P1_NAME").value;
if (((/^[A-Za-z]+$/).test(P1_NAME) == false) && (P1_NAME != "")) {
document.getElementById("P1_NAMEERROR").innerHTML = "Invalid name";
}
if (((/^[A-Za-z]+$/).test(P1_NAME) == true) && (P1_NAME != "")) {
document.getElementById("P1_NAMEERROR").innerHTML = "";
}
if (P1_NAME == "") {
document.getElementById("P1_NAMEERROR").innerHTML = "Cannot be left blank";
}
}
</script>
使用上面的代码,如果名称包含数字和符号,则该名称将被视为无效。这意味着,“bOb78”和“yU%##”将无效。
但是,这意味着用户只需键入“zhqsdakjzs”,它将被视为有效。
那么有没有一种方法可以真正验证名称是否真实?
编辑:“真正的”,这意味着名字不是像“sudialrhsdd”,“chriiiiiiistooopheeerrr”文本无意义的字符串,等等
定义“名称”和“真实”。在一般情况下,答案是“否”。 –
当然不是。什么是*真实姓名? 1991年,一对瑞典夫妇将他们的孩子命名为Brfxxccxxmnpcccclllmmnprxvclmnckssqlbb11116(发音为“albin”) - http://www.neatorama.com/2008/05/19/10-strangest-names-evar/ – Faust
你是指“真实“? –