你好,感谢你阅读此帖.下面是我写的一个Javascript函数<script language="javascript">
<!--//ycName1,ycName2,ycName3,ycName4均为一个字符串.function dispData( ycName1,ycName2,ycName3,ycName4, curTime,ycvValue1,ycvValue2,ycvValue3,ycvValue4)
{ if(ycName1=='请选择遥测数据')
{
    document.getElementById("dataName1").style.display=false;
    document.getElementById("dataTime1").style.display=false;
    document.getElementById("dataValue1").style.display=false;
}
else
{
    document.getElementById("dataName1").innerHTML = ycName1;
    document.getElementById("dataTime1").innerHTML = curTime;
    document.getElementById("dataValue1").innerHTML = ycvValue1;
}


if(ycName2=='请选择遥测数据')
{
    document.getElementById("dataName2").style.display=false;
    document.getElementById("dataTime2").style.display=false;
    document.getElementById("dataValue2").style.display=false;
}
else
{
    document.getElementById("dataName2").innerHTML = ycName2;
    document.getElementById("dataTime2").innerHTML = curTime;
    document.getElementById("dataValue2").innerHTML = ycvValue2;
}


if(ycName3=='请选择遥测数据')
{
    document.getElementById("dataName3").style.display=false;
    document.getElementById("dataTime3").style.display=false;
    document.getElementById("dataValue3").style.display=false;
}
else
{
    document.getElementById("dataName3").innerHTML = ycName3;
    document.getElementById("dataTime3").innerHTML = curTime;
    document.getElementById("dataValue3").innerHTML = ycvValue3;
}


if(ycName4=='请选择遥测数据')
{
    document.getElementById("dataName4").style.display=false;
    document.getElementById("dataTime4").style.display=false;
    document.getElementById("dataValue4").style.display=false;
}
else
{
    document.getElementById("dataName4").innerHTML = ycName4;
    document.getElementById("dataTime4").innerHTML = curTime;
    document.getElementById("dataValue4").innerHTML = ycvValue4;
}
}
//-->
</script>使用的时候出现了问题,就是如果第一个if条件 if(ycName1=='请选择遥测数据') 是真的话,后面的语句就不会执行了,希望各位朋友帮帮我,看看哪里出了问题.

解决方案 »

  1.   

    另外说明一下,
    我把
    判断语句if(ycName1=='请选择遥测数据')
    改成
    if(ycName1=="请选择遥测数据")把单引号改成双引号后执行的结果还是一样.
      

  2.   

    不确定。
    如果是真的话, 那就是DOM有了变化, js停止了。
      

  3.   

     if(ycName1=='请选择遥测数据')
            {
                document.getElementById("dataName1").style.display="none";
                document.getElementById("dataTime1").style.display="none";
                document.getElementById("dataValue1").style.display="none";
            }
            else
            {
                document.getElementById("dataName1").innerHTML = ycName1;
                document.getElementById("dataTime1").innerHTML = curTime;
                document.getElementById("dataValue1").innerHTML = ycvValue1;
            }
            
            
            if(ycName2=='请选择遥测数据')
            {
                document.getElementById("dataName2").style.display="none";
                document.getElementById("dataTime2").style.display="none";
                document.getElementById("dataValue2").style.display="none";
            }
            else
            {
                document.getElementById("dataName2").innerHTML = ycName2;
                document.getElementById("dataTime2").innerHTML = curTime;
                document.getElementById("dataValue2").innerHTML = ycvValue2;
            }
            
            
            if(ycName3=='请选择遥测数据')
            {
                document.getElementById("dataName3").style.display="none";
                document.getElementById("dataTime3").style.display="none";
                document.getElementById("dataValue3").style.display="none";
            }
            else
            {
                document.getElementById("dataName3").innerHTML = ycName3;
                document.getElementById("dataTime3").innerHTML = curTime;
                document.getElementById("dataValue3").innerHTML = ycvValue3;
            }
            
            
            if(ycName4=='请选择遥测数据')
            {
                document.getElementById("dataName4").style.display="none";
                document.getElementById("dataTime4").style.display="none";
                document.getElementById("dataValue4").style.display="none";
            }
            else
            {
                document.getElementById("dataName4").innerHTML = ycName4;
                document.getElementById("dataTime4").innerHTML = curTime;
                document.getElementById("dataValue4").innerHTML = ycvValue4;
            }
    }
      

  4.   

    检查下你传进去的参数是否正确,ycName2以后的数据
      

  5.   


    <script language="javascript">
    <!--//ycName1,ycName2,ycName3,ycName4均为一个字符串.function dispData( ycName1,ycName2,ycName3,ycName4, curTime,ycvValue1,ycvValue2,ycvValue3,ycvValue4)
    {        if(ycName1=='请选择遥测数据')
            {
                document.getElementById("dataName1").style.display='none';
                document.getElementById("dataTime1").style.display='none';
                document.getElementById("dataValue1").style.display='none';
            }
            else
            {
                document.getElementById("dataName1").innerHTML = ycName1;
                document.getElementById("dataTime1").innerHTML = curTime;
                document.getElementById("dataValue1").innerHTML = ycvValue1;
            }
            
            
            if(ycName2=='请选择遥测数据')
            {
                document.getElementById("dataName2").style.display='none';
                document.getElementById("dataTime2").style.display='none';
                document.getElementById("dataValue2").style.display='none';
            }
            else
            {
                document.getElementById("dataName2").innerHTML = ycName2;
                document.getElementById("dataTime2").innerHTML = curTime;
                document.getElementById("dataValue2").innerHTML = ycvValue2;
            }
            
            
            if(ycName3=='请选择遥测数据')
            {
                document.getElementById("dataName3").style.display=false;
                document.getElementById("dataTime3").style.display=false;
                document.getElementById("dataValue3").style.display=false;
            }
            else
            {
                document.getElementById("dataName3").innerHTML = ycName3;
                document.getElementById("dataTime3").innerHTML = curTime;
                document.getElementById("dataValue3").innerHTML = ycvValue3;
            }
            
            
            if(ycName4=='请选择遥测数据')
            {
                document.getElementById("dataName4").style.display=false;
                document.getElementById("dataTime4").style.display=false;
                document.getElementById("dataValue4").style.display=false;
            }
            else
            {
                document.getElementById("dataName4").innerHTML = ycName4;
                document.getElementById("dataTime4").innerHTML = curTime;
                document.getElementById("dataValue4").innerHTML = ycvValue4;
            }
    }
    //-->
            </script>
    <input type="button" onclick="dispData('请选择遥测数据','ycName2','ycName3','ycName4', 'curTime','ycvValue1','ycvValue2','ycvValue3','ycvValue4')">
    <div id="dataName1"></div>
    <div id="dataTime1"></div>
    <div id="dataValue1"></div><div id="dataName2"></div>
    <div id="dataTime2"></div>
    <div id="dataValue2"></div><div id="dataName3"></div>
    <div id="dataTime3"></div>
    <div id="dataValue3"></div><div id="dataName4"></div>
    <div id="dataTime4"></div>
    <div id="dataValue4"></div>
      

  6.   

    传入的参数全部都是正确的改成"none"了,还是一样.
      

  7.   

    这样的效率高?不如使用switch啊。在多种选择的时候,还是switch好用。而且效率会上升的多
      

  8.   

    后面的不执行那就只有一个可能:出错了
    除了display = "none"之外还有这些ID的元素是不是存在,以及函数执行的时候这些元素是不是已经加载了
      

  9.   

    <table id="dataTable"  cellspacing="1" cellpadding="1" align="center" width="100%">
    <tr><td width="15%" bgColor="#dee6f0" >名称</td><td width="15%" bgColor="#dee6f0">时间</td><td width="15%" bgColor="#dee6f0">数值</td></tr>
    <tr>
    <td id="dataName1" width="33%">&nbsp;</td>
    <td id="dataTime1"  width="33%">&nbsp;</td>
    <td id="dataValue1"  width="33%">&nbsp;</td>
    </tr>
    <tr>
    <td id="dataName2" width="33%">&nbsp;</td>
    <td id="dataTime2"  width="33%">&nbsp;</td>
    <td id="dataValue2"  width="33%">&nbsp;</td>
    </tr>
    <tr>
    <td id="dataName3" width="33%">&nbsp;</td>
    <td id="dataTime3"  width="33%">&nbsp;</td>
    <td id="dataValue3"  width="33%">&nbsp;</td>
    </tr>
    <tr>
    <td id="dataName4" width="33%">&nbsp;</td>
    <td id="dataTime4"  width="33%">&nbsp;</td>
    <td id="dataValue4"  width="33%">&nbsp;</td>
    </tr>

    </table>就是不知道哪里出错了,传递过来的字符串都是正确 的呼
      

  10.   

    以下可以的<script language="javascript">
    <!--//ycName1,ycName2,ycName3,ycName4均为一个字符串.function dispData( ycName1,ycName2,ycName3,ycName4, curTime,ycvValue1,ycvValue2,ycvValue3,ycvValue4)
    {        if(ycName1=='请选择遥测数据')
            {
                document.getElementById("dataName1").style.display='none';
                document.getElementById("dataTime1").style.display='none';
                document.getElementById("dataValue1").style.display='none';
            }
            else
            {
                document.getElementById("dataName1").innerHTML = ycName1;
                document.getElementById("dataTime1").innerHTML = curTime;
                document.getElementById("dataValue1").innerHTML = ycvValue1;
            }
            
            
            if(ycName2=='请选择遥测数据')
            {
                document.getElementById("dataName2").style.display='none';
                document.getElementById("dataTime2").style.display='none';
                document.getElementById("dataValue2").style.display='none';
            }
            else
            {
                document.getElementById("dataName2").innerHTML = ycName2;
                document.getElementById("dataTime2").innerHTML = curTime;
                document.getElementById("dataValue2").innerHTML = ycvValue2;
            }
            
            
            if(ycName3=='请选择遥测数据')
            {
                document.getElementById("dataName3").style.display=false;
                document.getElementById("dataTime3").style.display=false;
                document.getElementById("dataValue3").style.display=false;
            }
            else
            {
                document.getElementById("dataName3").innerHTML = ycName3;
                document.getElementById("dataTime3").innerHTML = curTime;
                document.getElementById("dataValue3").innerHTML = ycvValue3;
            }
            
            
            if(ycName4=='请选择遥测数据')
            {
                document.getElementById("dataName4").style.display=false;
                document.getElementById("dataTime4").style.display=false;
                document.getElementById("dataValue4").style.display=false;
            }
            else
            {
                document.getElementById("dataName4").innerHTML = ycName4;
                document.getElementById("dataTime4").innerHTML = curTime;
                document.getElementById("dataValue4").innerHTML = ycvValue4;
            }
    }
    //-->
            </script>
    <input type="button" onclick="dispData('请选择遥测数据','ycName2','ycName3','ycName4', 'curTime','ycvValue1','ycvValue2','ycvValue3','ycvValue4')">
    <table id="dataTable"  cellspacing="1" cellpadding="1" align="center" width="100%">
                                                        <tr><td width="15%" bgColor="#dee6f0" >名称</td><td width="15%" bgColor="#dee6f0">时间</td><td width="15%" bgColor="#dee6f0">数值</td></tr>
                                                        <tr>
                                                            <td id="dataName1" width="33%">&nbsp;</td>
                                                            <td id="dataTime1"  width="33%">&nbsp;</td>
                                                            <td id="dataValue1"  width="33%">&nbsp;</td>
                                                        </tr>
                                                        <tr>
                                                            <td id="dataName2" width="33%">&nbsp;</td>
                                                            <td id="dataTime2"  width="33%">&nbsp;</td>
                                                            <td id="dataValue2"  width="33%">&nbsp;</td>
                                                        </tr>
                                                        <tr>
                                                            <td id="dataName3" width="33%">&nbsp;</td>
                                                            <td id="dataTime3"  width="33%">&nbsp;</td>
                                                            <td id="dataValue3"  width="33%">&nbsp;</td>
                                                        </tr>
                                                        <tr>
                                                            <td id="dataName4" width="33%">&nbsp;</td>
                                                            <td id="dataTime4"  width="33%">&nbsp;</td>
                                                            <td id="dataValue4"  width="33%">&nbsp;</td>
                                                        </tr>
                                                        
                                                    </table>
      

  11.   


    为什么前面两个的style.display='none'; 设成none
    后面的又设成 style.display=false;  呢
    没有装IE8啊
      

  12.   

    全部设为none, 我没注意到,
      

  13.   

    挨行打alert,看看到哪行不执行了~~
      

  14.   

    17楼...你直接在函数开始写debugger;就可以进入调试了 何必每行都alert?
      

  15.   

    document.getElementById("dataName1").style.display=false;错了
    如下document.getElementById("dataName1").style.display='block'
      

  16.   

    document.getElementById("dataName1").style.display='block'请问这句表示什么意思?
      

  17.   

    将id为dataName1的这个标签显示出来,none为隐藏,不占位置的隐藏
    你的代码想要什么效果?我这边直接打出了
    名称 时间 数值 
          
    ycName2 curTime ycvValue2 
    ycName3 curTime ycvValue3 
    ycName4 curTime ycvValue4 
    的结果了
      

  18.   

    那如果要让它显示呢,应该怎么办呢,
    是不是 document.getElementById("dataValue1").style.display="";???
      

  19.   

    document.getElementById("dataName1").style.display='block' 
    这个就是啦
    你不是已经写出来了吗?
      

  20.   

    显示:document.getElementById(src).style.display="inline";
    隐藏:document.getElementById(src).style.display="none";
      

  21.   

    显示:document.getElementById(src).style.display="block"; 
    隐藏:document.getElementById(src).style.display="none";
      

  22.   

    我猜是一开始设置了隐藏了以后,没有再设置让它显示出来,呵呵
    试试这样吧[code=JScript]<scriptlanguage="javascript"> <!--//ycName1,ycName2,ycName3,ycName4均为一个字符串.function dispData( ycName1,ycName2,ycName3,ycName4, curTime,ycvValue1,ycvValue2,ycvValue3,ycvValue4) 
    {if(ycName1=='请选择遥测数据') 
            { 
                document.getElementById("dataName1").style.display='none'; 
                document.getElementById("dataTime1").style.display='none'; 
                document.getElementById("dataValue1").style.display='none'; 
            }else 
            { 
                document.getElementById("dataName1").innerHTML= ycName1; 
                document.getElementById("dataTime1").innerHTML= curTime; 
                document.getElementById("dataValue1").innerHTML= ycvValue1; 
            }if(ycName2=='请选择遥测数据') 
            { 
                document.getElementById("dataName2").style.display='none'; 
                document.getElementById("dataTime2").style.display='none'; 
                document.getElementById("dataValue2").style.display='none'; 
            }else 
            { 
                document.getElementById("dataName2").innerHTML= ycName2; 
                document.getElementById("dataTime2").innerHTML= curTime; 
                document.getElementById("dataValue2").innerHTML= ycvValue2; 
            }if(ycName3=='请选择遥测数据') 
            { 
                document.getElementById("dataName3").style.display='none'; 
                document.getElementById("dataTime3").style.display='none'; 
                document.getElementById("dataValue3").style.display='none'; 
            }else 
            { 
                document.getElementById("dataName3").innerHTML= ycName3; 
                document.getElementById("dataTime3").innerHTML= curTime; 
                document.getElementById("dataValue3").innerHTML= ycvValue3; 
            }if(ycName4=='请选择遥测数据') 
            { 
                document.getElementById("dataName4").style.display='none'; 
                document.getElementById("dataTime4").style.display='none'; 
                document.getElementById("dataValue4").style.display='none'; 
            }else 
            { 
                
                document.getElementById("dataName4").style.display=''; 
                document.getElementById("dataTime4").style.display=''; 
                document.getElementById("dataValue4").style.display='';             document.getElementById("dataName4").innerHTML= ycName4; 
                document.getElementById("dataTime4").innerHTML= curTime; 
                document.getElementById("dataValue4").innerHTML= ycvValue4; 
            } 
    }//--> </script>code]跟第四个Else一样,把
    document.getElementById("dataName4").style.display=''; 
    document.getElementById("dataTime4").style.display=''; 
    document.getElementById("dataValue4").style.display=''; 
    把它们设置成显示出来,试试,当然 隐藏的时候要设置成"none"的..
    document.getElementById("dataValue4").style.display='none';