jQuery .replaceWith()无法使用更新的文本正确更新

时间:2018-11-01 12:30:45

标签: javascript jquery replacewith

我有一个正在验证的表格,然后才能提交。顾名思义,ValidateForm()验证表单,ValidateRange(num)验证表单上的字段集,具体取决于用户选择。从我这里得知验证已正确完成。

在我要检查结果的最后一个if语句中,如果我使用jQuery .append()可以正常工作,但是我想用replaceWith()方法替换验证文本,但没有发生。

result.message只是一个文本字符串,指出哪个字段存在验证问题并将用户指向该字段。

console.log()中,当我使用正确的值修复字段时,我可以看到验证指针消息正确显示,但是由于某种原因,它继续用第一条指针消息替换<div id ='ValidationDiv'></div>,并且再次。

function ValidateForm() {
    var result = {valid:true, message:"In-Progress"};

    if ($('#firstRangeRadioButton').is(':checked'))
        result = ValidateRange(1);
    else if ($('#secondRangeRadioButton').is(':checked'))
    {
        result = ValidateRange(1);
        if(result.valid == true)
            result = ValidateRange(2);
    } 
    else if ($('#thirdRangeRadioButton').is(':checked')) {
        result = ValidateRange(1);
        if (result.valid == true)
            result = ValidateRange(2);
        if (result.valid == true)
            result = ValidateRange(3);
    }

    if (result.valid == false)
    {
        console.log(result.message);
        message = "<div class=\"well well-sm\"><div><div class=\"blink\"><strong>Validation Failed: </strong>" + result.message + "</div></div></div>";
        $('#ValidationDiv').replaceWith(message);
        blink('.blink');
        console.log(message);

        return false;
    }
    else
        return true;
}

0 个答案:

没有答案
相关问题