0

我是这个论坛的新手,并且是 Javascript 的新手:我正在尝试做一个简单的表单验证。在 html 文件的头部我有一个函数

function form_onchange(){

    var Fname = document.getElementById('Fname');
    var RegExpTxt = /^([a-zA-Z ]){2,30}$/;

    if (!RegExpTxt(Fname.value)) {
        alert('Please provide a valid name');
        Fname.focus();
        Fname.select();
        return false;
    }
}

这只是我有其他验证规则的功能的一部分。

在 html 部分我有:

<table align="center" border = "1" bordercolor="#8B008B" cellpadding="5">
    <form action = "Pizza Fun.html" name = "formA" method = "post" onsubmit = "return checkBlank() ">
        <tr>
            <td><p>Name</p></td>
            <td><span>First </span><input type = "text" name = "Fname" id = "Fname" onchange = "form_onchange()" value = "first" />
            <span>Last </span><input type = "text" name = "Lname" id = "Lname" onchange = "form_onchange()" value = "lat " />
            </td>
        </tr>

验证部分昨天还在工作,但现在我的生活现在不工作了。请任何人都可以帮助我为什么它不起作用。

4

1 回答 1

0

使用RegExpTxt.test(Fname.value)代替RegExpTxt(Fname.value)

Javascript最终应该是:

function form_onchange(){
    var Fname = document.getElementById('Fname');
    var RegExpTxt = /^([a-zA-Z ]){2,30}$/;
    if (!RegExpTxt.test(Fname.value)) {
    alert('Please provide a valid name');
    Fname.focus();
    Fname.select();
    return false;
    }
}
于 2013-11-12T23:50:38.917 回答