這聽起來像一個重複的線程,但它不是(據我搜查: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
你是指「真實「? –