2016-09-15 55 views
0

第一:我知道你不应该使用HREF的JavaScript:把JavaScript的一个链接。这是不好的做法,我在论坛上可以找到的是不要使用它,并且有关这方面的问题会被拒绝。但我没有生成HTML。是生成html的销售人员,我想他们不知道更好。href javascript:生成的视觉力量页面不工作在Firefox和IE

现在这不适用于Firefox和IE。只在铬。奇怪的是,如果我尝试在测试html页面中写入相同的href,所有3个浏览器似乎都很高兴地执行javascript之后的javascript:所以它并不是所有浏览器都不支持。

但是,随着雷电接口中嵌入的视觉力量页面,这种链接不再起作用。所以我想知道是否有什么我可以调查或做的,以使这些工作,所以任何关于为什么这样的链接将不起作用的一般信息,或更具体地说明为什么salesforce将这样做在闪电界面的音频页面可以帮助我。

此类链接与生成

 <apex:outputLink target="_top" value="{!UpdateLink}">/apex:outputLink> 

,并检查这些链接不工作嵌入闪电页面,当我插入HTML的下面的代码片段都在我的VF页和空白的HTML页面

<script type="text/javascript"> 
     function DebugClick() 
     { 
      alert ('click'); 
      return false; 
     } 

    </script> 

    <a href="javascript:DebugClick();" target="_top">debugger</a> 

在html页面中,它可以在所有三种浏览器中使用。在VF页面中,它只能在chrome中工作。

我还强迫代码中断,并检查使用JavaScript的代码,以查看链接的href属性或onclick是否被更改,但它们看起来完好无损。这里是我考察实际的链接我的控制台输出复制不工作,不是我的测试环节

window.getElementByIdCS('j_id0:j_id1:j_id2:updatelinkpnl').childNodes [0].onclick 
    null 
    window.getElementByIdCS('j_id0:j_id1:j_id2:updatelinkpnl').childNodes [0].attributes ['href'] 
    href="javascript:srcUp('https%3A%2F%2Fbvdep.na5.visual.force.com%2Fapex%2FBvDAccountLink%3Faction%3DUpdate%26id%3D0017000001THUbxAAH%26objType%3DAccount%26product%3Dorbisneo%26isdtp%3Dp1');" 

回答

0

我终于破解它(见或多或少它是从哪里来),所以这里的人遇到了类似的问题似乎是关键因素。 这是在iframe中。目标是_top。我知道这是一个奇怪的组合,但原始网址是一个简单的链接,需要顶级目标。这只是闪电接口,它取代了这个使用JavaScript,但并没有删除顶部。 显然IE和Firefox会拒绝执行它。这可能是一些安全策略标题是等式的一部分,但是因为我找到了一个解决方案(使目标= _top依赖于界面,我不需要进一步搜索)

相关问题