如何使用javascript验证html中的文本字段?

时间:2015-03-07 17:55:07

标签: javascript html function validation

我有一个用户输入的文本字段和4位数的考试号码。如何验证文本字段以确保输入的数字正好是4位数(包括前导0)。

到目前为止,我已对其进行了验证,因此不会留空。 这是我的Javascript:

function validateForm() 
{
    var result = true;

    var msg="";
    if (document.ExamEntry.name.value=="")
    {
        msg+="You must enter your name \n";
        document.ExamEntry.name.focus();
        document.getElementById('name').style.color="red";
        result = false;
    }
    if (document.ExamEntry.subject.value=="")
    {
        msg+="You must enter the subject \n";
        document.ExamEntry.subject.focus();
        document.getElementById('subject').style.color="red";
        result = false;
    }



    if (document.ExamEntry.ExamNo.value=="")
    {
        msg+="You must enter your Examination number \n";
        document.ExamEntry.ExamNo.focus();
        document.getElementById('ExamNo').style.color="red";
        result = false;
    }


    if(msg=="")
    {

        return result;
    }
    {
    alert(msg)
    return result;
    }
}

这是我的HTML:

<body>
<h1>Exam Entry Form</h1>
<form name="ExamEntry" method="post" action="success.html">
    <table width="50%" border="0">
        <tr>

        </tr>
        <tr>
            <td id="name">Name</td>
            <td><input type="text" name="name" /></td>
        </tr>
        <tr>
            <td id="subject">Subject</td>
            <td><input type="text" name="subject"/></td>
        </tr>

        <tr>
            <td id="ExamNo">Examination number</td>
            <td><input type="text" name="ExamNo"/></td>
        </tr>


        <tr>
            <td><input type="submit" name="Submit" value="Submit" onClick="return validateForm();" /></td>
            <td><input type="reset" name="Reset" value="Reset" /></td>
        </tr>
    </table>
</form>

2 个答案:

答案 0 :(得分:0)

请参阅以下链接

http://jqueryvalidation.org/documentation/

http://jqueryvalidation.org/files/demo/

这是一个验证插件,易于使用。

答案 1 :(得分:0)

/^\d\d\d\d$/.test(document.ExamEntry.ExamNo.value)

它返回一个布尔值,检查ExamNo是否匹配该正则表达式(4位数字符串)。

完整示例:

if (!/^\d\d\d\d$/.test(document.ExamEntry.ExamNo.value))
    {
        msg+="Examination number should be 4-digit number. \n";
        document.ExamEntry.ExamNo.focus();
        document.getElementById('ExamNo').style.color="red";
        result = false;
    }