我正在用 PHP 编写表单验证代码。下面是代码。
id 为 #questionSubmit 的元素是一个包含 6 个文本字段(代码、问题、答案、选项 1、选项 2、选项 3、选项 4、选项 5)和一个提交按钮的表单。
<form id="createQuestionForm" action="" method="POST">
    Question Code: <input id="code" class="createQuestionTextBox1" type="text" name="questionCode">
    Question Name: <input id="question" class="createQuestionTextBox1" type="text" name="questionName">
    Correct Answer: <input id="answer" class="createQuestionTextBox1" type="text" name="correctAnswer">
    Option 1: <input id="option1" class="createQuestionTextBox2" type="text" name="option_1">
    Option 2: <input id="option2" class="createQuestionTextBox2" type="text" name="option_2">
    Option 3 <input id="option3" class="createQuestionTextBox2" type="text" name="option_3">
    Option 4 <input id="option4" class="createQuestionTextBox2" type="text" name="option_4">
    Option 5 <input id="option5" class="createQuestionTextBox2" type="text" name="option_5">
    <input type="Submit" id="questionSubmit" value="Create Question"></input> 
</form>
function SubmitFormCreationData() {
    $("#questionSubmit").click(function() {
        if (CheckCodeField($("#code").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#question").val()) == false) {
            return false;
        } else if (CheckCorrectAnswerField($("#answer").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#option1").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#option2").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#option3").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#option4").val()) == false) {
            return false;
        } else if (CheckAnswerNameFields($("#option5").val()) == false) {
            return false;
        } else {
            $.post("InsertNewQuestion.php", $('#createQuestionForm').serialize());
            alert('Quiz Created');
            window.setTimeout(delay,2000);
            return true;
        }
        return false;
    });
}
function CheckAnswerNameFields(value) {
    var isValid = true;
    if (value == "") 
        isValid = false;
    if (value == null)
        isValid = false;
    for(LCV = 0;LCV <= (count(value)-1); LCV++) {
        if(value[LCV] == "'")
            isValid = false;
        if(value[LCV] == '"')
            isValid = false;
    }
    return isValid;
}
function CheckCodeField(value) {
    var isValid = true;
    if(isInteger(value) == false)
        isValid = false;
    if(value < 100000)
        isValid = false;
    if(value > 999999)
        isValid = false;
    return isValid;
}  
function CheckCorrectAnswerField(value) {
    var isValid = true;
    if(isInteger(value) == false)
        isValid = false;
    if(value < 1)
        isValid = false;
    if(value > 5)
        isValid = false;
    return isValid;
}
function isInteger(possibleInteger) {
    return /^[\d]+$/.text(possibleInteger);
}
现在,如果正确输入了第一个字段,则输出如所愿,则返回 false。但是,如果第一个字段输入正确,其余字段为空白,则页面刷新,但它应该返回 false,因为我检查问题和选项字段是否为空白。为什么会这样?