2017-07-20 44 views
0

下面的JS会相应地运行,但它从不碰到最后一个函数(showAllTabIdRedirect)。任何想法为什么?这是我的语法吗?我试图运行抓取主标签ID的第一个函数,然后使用它传递一些其他函数。最后,我会重定向用户以及刷新特定的选项卡。JavaScript的一部分未运行

<script> 
 
     
 
     function refreshDetailsTab() { 
 
      sforce.console.getEnclosingPrimaryTabId(focusDetailSubtabRedirect); 
 
      
 
      var formsId; 
 
      
 
      var currentUrl = window.location.href; 
 

 
      if (currentUrl) { 
 
       formsId = currentUrl.split('?formId=')[1]; 
 
      } else { 
 
       return; 
 
      } 
 
      
 
      window.location = '/' + formsId; 
 
      debugger; 
 
          
 
     }; 
 
      
 
     sforce.console.getEnclosingPrimaryTabId(focusDetailSubtabRedirect); 
 
      
 
     var focusDetailSubtabRedirect = function showTabIdRedirect(result) { 
 
      // window.onload = function showTabIdV1(result) { 
 
      //alert('2222'); 
 
      var primaryTabID = result.id; 
 
      
 
      sforce.console.getSubtabIds(primaryTabID , showAllTabIdRedirect); 
 
      debugger; 
 
     } 
 

 
     var showAllTabIdRedirect = function showAllTabIdRedirect(result2) { 
 
      // alert('33333'); 
 
      var firstSubTab = result2.ids[0]; 
 
      
 
      sforce.console.refreshSubtabById(firstSubTab, false); 
 
      debugger; 
 
      //alert('Subtab IDs=====: ' + result.ids[0]); 
 
     }; 
 
        
 
    window.onload = refreshDetailsTab; 
 
    
 
    </script>

+0

是正在执行的showTabIdRedirect函数? –

+0

你在哪里将'结果'参数传递给'showTabIdRedirect'? –

+0

感谢您的回复。这是抓住ID,因为当我删除代码重定向用户(所有formsId代码),sfdc函数工作正常。 \t 查看截图:oi68.tinypic.com/htu4c3.jpg –

回答

0

您可以检查这些方法的成功完成。有可能'getSubtabIds'由于某种原因停止,并且会导致调用回调函数'showAllTabIdRedirect'失败。

See the documentation here for getSubtabIds

+0

感谢您的回复。这是抓住ID,因为当我删除代码重定向用户(所有formsId代码),sfdc函数工作正常。 –

+0

查看截图:http://oi68.tinypic.com/htu4c3.jpg –

0

我觉得它有什么做的window.location的触发第一。它可以在其他JS加载之前重定向用户。