我想检查文本字段newTeamName是否已经存在于选择框中存储的团队名称列表中。不幸的是,我的代码不起作用-怎么了?哦,我没有控制台问题。

    optionList = [];
    $('#chooseTeam option').each(function() {
        optionList.push($(this).val())
    });
    if (form.newTeamName.value in optionList) {
        $("#text-error").html("Team exists");
        $('#text-error').fadeIn(400).delay(3200).fadeOut(800);
        return false;
    }


小更新:

哦,我的form.name.value可以正常工作,因为它们可以用于其他if语句。

最佳答案

optionList是用于对象属性(或数字数组索引)的数组in,可以使用indexOf测试值是否在数组中

optionList = [];
$('#chooseTeam option').each(function() {
    optionList.push($(this).val())
});
if (optionList.indexOf(form.newTeamName.value) > -1) {
    $("#text-error").html("Team exists");
    $('#text-error').fadeIn(400).delay(3200).fadeOut(800);
    return false;
}

关于javascript - 选中选择框值并将其与输入进行比较,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14028428/

10-09 02:05