javascript style.display 一起阻止两个切换

javascript style.display block two toggles together

简单的问题:为什么 javascript 允许您使用第一段代码,而不是第二段代码???我只是想在显示另一个时隐藏一个 div。简单的切换有效(第一段代码),第二段失败,javascript 在控制台中给出 "an undefined function" (showtablediv)。

function showtablediv(){

    var xfor = document.getElementById('foreachhold');
    var xtable = document.getElementById('tableviewhold');

    if(xfor.style.display == 'block')
        xfor.style.display = 'none';
    else
      xfor.style.display = 'block';
}
function showtablediv(){

    var xfor = document.getElementById('foreachhold');
    var xtable = document.getElementById('tableviewhold');

    if(xfor.style.display == 'block')
        xfor.style.display = 'none';
        xtable.style.display ='block';       
else
      xfor.style.display = 'block';
}

因为你在if(xfor.style.display == 'block')之后做了不止一行代码。如果你不使用括号那么代码行的限制是一个

function showtablediv(){

    var xfor = document.getElementById('foreachhold');
    var xtable = document.getElementById('tableviewhold');

    if(xfor.style.display == 'block')
        xfor.style.display = 'none';
    else
      xfor.style.display = 'block';
}
function showtablediv(){

    var xfor = document.getElementById('foreachhold');
    var xtable = document.getElementById('tableviewhold');

    if(xfor.style.display == 'block')
        xfor.style.display = 'none';
        xtable.style.display ='block';// the problem is this line       
    else
      xfor.style.display = 'block';
}