Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript在一个if语句上执行多个操作_Javascript - Fatal编程技术网

javascript在一个if语句上执行多个操作

javascript在一个if语句上执行多个操作,javascript,Javascript,我想做的事情可以总结如下:“如果满足此条件,那么执行以下多个操作。”我的代码在第一件事情上运行良好,但当我添加要执行的其他操作时,会出现“Uncaught SyntaxError:Unexpected token else”错误。我会记下下面的问题行 function turnonall(cl) { var elements = document.getElementsByClassName(cl); for (var i = 0; i < elements.lengt

我想做的事情可以总结如下:“如果满足此条件,那么执行以下多个操作。”我的代码在第一件事情上运行良好,但当我添加要执行的其他操作时,会出现“Uncaught SyntaxError:Unexpected token else”错误。我会记下下面的问题行

function turnonall(cl) {
    var elements = document.getElementsByClassName(cl);
      for (var i = 0; i < elements.length; i++){
        if (elements[i].style.display == 'none' || elements[i].style.display == '' || elements[i].style.display == 'block')
        elements[i].style.display = 'block';
        elements[i].style.className = 'buttonactive';  <--this line is throwing the error.
        else
        elements[i].style.display = 'none';
      }
  }
功能旋转(cl){
var elements=document.getElementsByClassName(cl);
对于(var i=0;i函数turnonall(cl){
var elements=document.getElementsByClassName(cl);
对于(var i=0;i元素[i].style.className='buttonactive';您的
if/else
语句的签名不正确。您尝试的操作仅适用于
if/else
语句中只有一行的
if
语句。一旦您在无括号的
if/else
语句中添加了多行,则括号是必需的

只需将if和else块用括号括起来,如下所示:

function turnonall(cl) {
  var elements = document.getElementsByClassName(cl);
  for (var i = 0; i < elements.length; i++) {
    if (elements[i].style.display == 'none' || elements[i].style.display == '' || elements[i].style.display == 'block') {
      elements[i].style.display = 'block';
      elements[i].style.className = 'buttonactive';
    } else {
      elements[i].style.display = 'none';
    }
  }
}
但事实并非如此

if (true)
  console.log('it is true')
  console.log('and I like it')
else
  console.log('it is not true')

你缺少括号{}但你并没有错。事实上,你可以做你想做的事情,只要在
if
语句中只有一行。检查我的答案是否详细。@Chris指出,一旦你接受另一个答案,你就不接受你接受的第一个答案。(只是为了让你熟悉这个系统,完全不是为了暗示你接受我的答案)。你也可以投票选出好的但不是最好的答案。是的,很抱歉弄错了。顺便说一句,我已经投票选出了你的答案,但我想在我的声誉分数提高之前,它不会显示出来。
if (true)
  console.log('it is true')
else
  console.log('it is not true')
if (true)
  console.log('it is true')
  console.log('and I like it')
else
  console.log('it is not true')