如何验证html中的文本框,用户将输入其名字,输入不接受整数&特殊字符?
<input name="txtfname" type="text" maxlength="30" required />
答案 0 :(得分:3)
尝试使用此javascript代码进行验证
function Validate()
{
var val = document.getElementById('your_input_control_id').value;
if (!val.match(/^[a-zA-Z]+$/))
{
alert('Only alphabets are allowed');
return false;
}
return true;
}
答案 1 :(得分:2)
您需要检查客户端和服务器端的用户名字段。
使用Javascript:
var username = document.getElementsByName("txtfname")[0].value;
if (username .match(/^[A-Za-z]+$/)) {
// Valid
} else {
// Invalid
}
PHP:
$username = $_POST['txtfname'];
if (preg_match("/^[A-Za-z]+$/", $username ) {
// Valid
} else {
// Invalid
}
答案 2 :(得分:0)
In Javascript
var uname = document.form.username;
function validate(){
var letters = /^[A-Za-z]+$/;
if(uname.value.match(letters))
{
return true;
}
else
{
alert('Username must have alphabet characters only');
return false;
}
}
In Html
<form method="post" action="#" onSubmit="return validate();" name="form">
<input type="text" name="username" class="username"/>
<input type="submit" value="submit">
</form>
答案 3 :(得分:0)
这是正确的RegEx。
名称中唯一允许使用的标点是句号,撇号和连字符。此RegEx也适用于André等名称。
^ [\ p {L} .'-] + $
var username = document.getElementsById("fname").value;
if (username .match(/^[\p{L} \.'\-]+$/)) {
// Valid username
} else {
// Invalid username
}