我创建了一个简单的vf页面,并在vf页面中放置了小的jQuery脚本(在代码下面)。我已将此vf页面添加为案例详细信息页面中的内联VF页面。在jQuery中,我试图通过传递案例编号所在的div的id来提取案例编号并提醒结果。但我得到一个空白的弹出窗口。 但是当我尝试相同时,通过将jQuery放在侧边栏中,它的工作正常。
<apex:page standardController="Case">
<script src="/resource/jQueryLatest" type="text/javascript"></script>
<script type="text/javascript">
j$(document).ready(function(){
var caseNumber = j$("#cas2_ileinner").text();
alert(caseNumber);
});
</script>
</apex:Page>
问题:无法从jQuery脚本访问标准详细信息页面的DOM元素,该脚本位于同一页面的内联vf页面中。
请帮忙!
此致 萨姆
答案 0 :(得分:2)
是的,“按预期工作”。 Visualforce由不同的域(* .visual.force.com)提供,您的浏览器可以阻止跨站点Javascript。
使用VF页面中的合并字段,您不需要JS来获取它:)
var caseNumber = '{!Case.CaseNumber}';
修改强>
在节标题中嵌入静态资源的讨厌技巧:
您需要一个具有纯JavaScript代码,没有标记,样式等的静态资源。
alert('Hello StackOveflow!'); //is OK,
<script>alert('Hello StackOveflow!');/* is not OK */</script>
然后,您只需在页面块部分名称中引用它:
<强>考虑:强>
{!megefields}
语法不会将服务器端替换为您期望的值。