如何验证文本框,该文本框应仅允许字符A-Z& a-z,不是整数,也不是特殊字符

时间:2014-09-02 09:46:01

标签: javascript php html

如何验证html中的文本框,用户将输入其名字,输入不接受整数&特殊字符?

<input name="txtfname" type="text" maxlength="30" required />

4 个答案:

答案 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
}