日期:2014-05-17  浏览次数:20767 次

求问一个jsp小问题?
 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语句,非要点第二次
------最佳解决方案--------------------
引用:
Java code?12345678 function guanzhu(projectId,concernCompanyId) {    window.location.href = "concernLevel.do?projectId=" + projectId + "&concernCompanyId=" + concernCompanyId;    var ……


第一次的时候、你的errorMsg没有值、所以两个if都不进入、
而你进入Servlet又返回过后、errorMsg有值了、只要errorMsg的值跟你的表达式匹配、if当然就进入了、alert自然会弹出来!

你直接弹出errorMsg的值就清楚了!
或者你加上一个else就知道了、在不行就在最下面加上alert!
------其他解决方案--------------------
  window.location.href = "concernLevel.do?projectId=" + projectId + "&concernCompanyId=" + concernCompanyId;
这行直接跳到其他页面去了。
------其他解决方案--------------------
var errorMsg = document.getElementById("errorMsg").value;
       //alert("可以到这");
         if(errorMsg=="success") 
             alert("关注成功");      
         if(errorMsg=="failure") 
            alert("请不要重复关注");
这部分应该放到页面的初始化方法里去
------其他解决方案--------------------
1、2楼正解 。 楼主想实现个什么效果的 。
------其他解决方案--------------------
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;
    }
}


------其他解决方案--------------------
你都已经先跳转了。  还要弹出 alert干嘛

------其他解决方案--------------------
五楼正解,先弹出提示然后再跳转
------其他解决方案--------------------
引用: