我有一个带有iframe和JavaScript的页面,Iframe可以访问父框架的函数。这些页面在同一服务器上(不是跨域脚本),在Firefox和IE上没有问题,但在Chrome上使用时,会出现以下消息。
不安全的JavaScript尝试访问具有URL的框架 http://samedomain:51700/irj/servlet/prt/portal/prtroot/CRMApp73.StoricoApp 从具有URL的框架中访问 http://samedomain:51700/irj/servlet/prt/portal/prtroot/CRMApp73.CRMOProxy。 域,协议和端口必须匹配。
如何解决此问题?我已经通过谷歌搜索了4个小时,希望有人能帮助我。
编辑:代码
这是父框架中用于提交表单的JavaScript代码。它用于向在iframe中加载的页面发送带有隐藏参数的隐藏表单。
这是带有target属性的表单,用于向iframe页面发送参数。
不安全的JavaScript尝试访问具有URL的框架 http://samedomain:51700/irj/servlet/prt/portal/prtroot/CRMApp73.StoricoApp 从具有URL的框架中访问 http://samedomain:51700/irj/servlet/prt/portal/prtroot/CRMApp73.CRMOProxy。 域,协议和端口必须匹配。
如何解决此问题?我已经通过谷歌搜索了4个小时,希望有人能帮助我。
编辑:代码
这是iframe页面中的JavaScript。此JavaScript调用父框架JavaScript函数“setUfficioPostale”。这就是Chrome给我“不安全访问...”错误的地方。
<script>
window.parent.setUfficioPostale(map);
</script>
这是父框架中用于提交表单的JavaScript代码。它用于向在iframe中加载的页面发送带有隐藏参数的隐藏表单。
function onAltroUfficioClick(){
document.getElementById("hiddenParams").submit();
$('#framePosteMaps').show();
}
这是父页面中的iframe定义。
<iframe id="framePosteMaps" scrolling="no" name="framePosteMaps"></iframe>
这是带有target属性的表单,用于向iframe页面发送参数。
<form id="hiddenParams" target="framePosteMaps" action="http://samedomain:51700/irj/servlet/prt/portal/prtroot/TestFrameRC.SimPerProxy" method="POST">
<input type="hidden" name="distanza" value="10">
<input type="hidden" name="cliente" value="Retail">
....................
</form>
document.domain
设置为相同的值会使它正常工作? - Brian Donovanfoo.somedomain.com
和bar.somedomain.com
,它们并不相同。 - c69