我用if语句编写了一个简单的函数,根据用户的选择重定向用户。基本上,用户会看到几个选项(A,B,C等)。当选择说出A和B时,用户将重定向到一个URL,当选择说出A和C时,用户将重定向到另一个URL。

到目前为止,使用以下代码可以实现此目的:

function redirect() {
    if (((document.getElementById('A').classList.contains('active')) == true) && ((document.getElementById('B').classList.contains('active')) == true)) {
        window.location = "https://www.example.com";
    };
};


我的问题是,我还希望能够排除所有其他可能性,这意味着如果要选择A和B,而又没有其他选择,那么我想添加一个子句来重定向用户。有没有一种方法可以在不将所有其他选项明确列为('active')) == false的情况下进行此操作?

再次感谢您,如果这个问题反映了我对编码的基本知识,也感到抱歉。

最佳答案

一个可以存储所有的活动值:

const ids = ["A","B","C","D","E"],state = {};
for(const id of ids)
   state[id] = document.getElementById(id).classList.contains('active');


接着:

if( state.A && state.B)

关于javascript - 排除if语句中的所有其他事件ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46302399/

10-11 04:20