未触发验证功能并提交表单

时间:2016-10-20 10:20:32

标签: javascript php forms

带有下面代码的文件是“newrecord.html”,它提供了一些表单,用于提交一些假设要执行数据库的记录条目,在用户提交表单后,调用验证函数来检查用户输入的函数。 表单正常加载但在提交表单后,验证函数未被调用,只是重定向到“newRecord.php”

    <!DOCTYPE html>

<html>
    <head>
    <title>insert New Record</title>
    <style>
    .recordform {
border:1px solid #999999;
font: normal 14px helvetica;
color: #444444
}
</style>

    <script>
function validateAuthor(field)
{
return(field=="") ? "No Author Entered".\n" : ""
}

function validateTitle(field)
{
return(field=="") ? "No Title Entered".\n" : ""
}

function validateCategory(field)
{
return(field=="") ? "No Category Entered".\n" : ""
}

function validateYear(field)
{
if (field=="") return "No Year Entered.\n"
else if (field.length>4)
return "Enter Valid Year value (YYYY).\n"
else if (/[^0-9]/.test(field))
return "Enter only numbers 0-9"
return ""
}

function validateIsbn(field)
{
if (field=="") return "No Isbn Entered.\n"
else if (/[^0-9]/.test(field))
return "Enter only numbers"
return ""
}


function validate(form)
{
fail=validateAuthor(form.author.value)
fail+=validateTitle(form.title.value)
fail+=validateCategory(form.category.value)
fail+=validateYear(form.year.value)
fail+=validateIsbn(form.isbn.value)

if (fail==""){
    return true;
}else{
    alert(fail);
return false}
}

</script>


</head>
    <body>

<table border="0" cellpading="2" cellspacing="5" bgcolor="#eeeeee">
    <th colspan="2" align="center">Insert New Record</th>
    <form method="post" action="newRecord.php" onsubmit="return validate(this)">
    <tr><td>Author</td>
    <td><input type="text" maxlength="25" name="author"</td></tr>
    <tr><td>Title</td>
    <td><input type="text" maxlength="25" name="title"</td></tr>
    <tr><td>Category</td>
    <td><input type="text" maxlength="25" name="category"</td></tr>
    <tr><td>Year</td>
    <td><input type="text" maxlength="25" name="year"</td></tr>
    <tr><td>Isbn</td>
    <td><input type="text" maxlength="25" name="isbn"</td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="Insert New Record"></td></tr>
</form>
    </table>
        </body>
            </html>

0 个答案:

没有答案