为什么我的错误消息不起作用

Why will my error message not work?

本文关键字:不起作用 消息 错误 我的 为什么      更新时间:2023-09-26

如果用户不选择他们是男性还是女性,我会设置一个错误。错误消息应该是,请选择您的性别。我没有收到那个信息,我收到的是如果他们选择了性别,我会收到的常规信息,但我在阅读文本中收到了。我唯一的红色文本是关于错误的,所以我不知道发生了什么。我的代码有100行长,所以我只会发布带有错误消息的部分,并会发布一个fiddle。

if (isNaN(total)) {
    msg = 'Input three numbers, please...';
} else if ($genderRadio.filter(':checked').length === 0) {
    msg = 'Please select your gender....';    
} else {
    $output.removeClass('error');
}

http://jsfiddle.net/7xM2f/46/

由于底部的total条件,它正在覆盖错误消息

你需要像这样的东西

    if(!msg){     
        if (total < 10) {
            msg = "should be higher...";
        } else if (total > 20) {
            msg = "super good ...";
        } else {
            msg = "not bad.";
        }
    }

演示:Fiddle

请检查您的代码

 var $genderRadio = $('input[name=gender]'); 

请将此代码用于条件:

else if ($('input[name=gender]:checked').val()==undefined)

您应该使用else if so,并根据优先级对顺序进行排序,以便最优先的条件首先出现。

试试这个:

    if (isNaN(total)) {
        msg = 'Input three numbers, please...';    
    } else if ($genderRadio.filter(':checked').length === 0) {
        msg = 'Please select your gender....';
    } else if {
        $output.removeClass('error');
    } else if (total < 10) {
            msg = "bad need a lot of work...";
    } else if (total > 20) {
        msg = "super super good...";
    } else {
        msg = "your with in the average.";
    }
    $output.text(msg);
    $output1.text(msg1);