function guanzhu(projectId,concernCompanyId) {
    window.location.href = "concernLevel.do?projectId=" + projectId + "&concernCompanyId=" + concernCompanyId;
    var errorMsg = document.getElementById("errorMsg").value;
       //alert("可以到这");
         if(errorMsg=="success") 
          alert("关注成功");  
         if(errorMsg=="failure") 
         alert("请不要重复关注");
点击按钮时候执行这个函数,但点第一次的时候只跳转,并不弹出alert里面内容,点第二次以后都正常
试了一下,是可以到上面注释的位置的,第一次就可以,为什么第一次进步了if语句,非要点第二次

解决方案 »

  1.   

      window.location.href = "concernLevel.do?projectId=" + projectId + "&concernCompanyId=" + concernCompanyId;
    这行直接跳到其他页面去了。
      

  2.   

    var errorMsg = document.getElementById("errorMsg").value;
           //alert("可以到这");
             if(errorMsg=="success") 
                 alert("关注成功");      
             if(errorMsg=="failure") 
                alert("请不要重复关注");
    这部分应该放到页面的初始化方法里去
      

  3.   


    第一次的时候、你的errorMsg没有值、所以两个if都不进入、
    而你进入Servlet又返回过后、errorMsg有值了、只要errorMsg的值跟你的表达式匹配、if当然就进入了、alert自然会弹出来!你直接弹出errorMsg的值就清楚了!
    或者你加上一个else就知道了、在不行就在最下面加上alert!
      

  4.   

    function guanzhu(projectId,concernCompanyId) {          
         var errorMsg = document.getElementById("errorMsg").value;
         if(errorMsg=="success"){ 
          alert("关注成功");               
         }else if(errorMsg=="failure"){ 
          alert("请不要重复关注"); 
         }else{
          window.location.href = "concernLevel.do?projectId=" + projectId + "&concernCompanyId=" + concernCompanyId;
        }
    }
      

  5.   

    你都已经先跳转了。  还要弹出 alert干嘛
      

  6.   


    你可以给id为errorMsg的这个元素一个初始值的嘛!!!
    <input id="errorMsg" value="初始值">........