Javascript 如何从localhost的iframe将数据设置为脱机html文件的父窗口变量?

Javascript 如何从localhost的iframe将数据设置为脱机html文件的父窗口变量?,javascript,html,iframe,Javascript,Html,Iframe,在我的html页面中(file:///C:/Users/NEC/Desktop/test.html)具有调用其他主机(localhost:8081/TProject/sample.html)的javascript变量(或输入文本字段)和iframe 在test.html中 <iframe src="localhost:8081/TProject/sample.html" ></iframe><br/> <input type="text" id="out

在我的html页面中(file:///C:/Users/NEC/Desktop/test.html)具有调用其他主机(localhost:8081/TProject/sample.html)的javascript变量(或输入文本字段)和
iframe

在test.html中

<iframe src="localhost:8081/TProject/sample.html" ></iframe><br/>
<input type="text" id="output" ><br />
错误消息是:

Uncaught SecurityError: Blocked a frame with origin "localhost:8081" from 
accessing a frame with origin "null".  The frame requesting access has a protocol of 
"http", the frame being accessed has a protocol of "file". Protocols must match.
如何将值(javascript变量)从在线服务器传递到离线html页面?


<iframe src="http:80//TProject/sample.html" ></iframe>

<iframe src="your_path_in_your_hard_drive/TProject/sample.html" ></iframe>
我认为您不能在src属性中使用localhost,请在src属性中尝试上面的任何一个链接。


我认为您不能在src属性中使用localhost,请在src属性中尝试上面的任何一个链接。


我认为您不能在src属性中使用localhost,请在src属性中尝试上面的任何一个链接。



我认为您不能在src属性中使用localhost,请在src属性中尝试上面的任何一个链接。

谢谢您的回答。 现在,我可以使用“window.parent.postMessage()”解决我的问题

从iframe的本地主机服务器页面,使用以下命令发送消息

window.parent.postMessage({ message: 'successfully connected'}, "*");
并从脱机页面捕获该消息

window.addEventListener('message', function(event) {
  document.getElementById("output").value = event.data.message;
}, false);

谢谢你的回答。 现在,我可以使用“window.parent.postMessage()”解决我的问题

从iframe的本地主机服务器页面,使用以下命令发送消息

window.parent.postMessage({ message: 'successfully connected'}, "*");
并从脱机页面捕获该消息

window.addEventListener('message', function(event) {
  document.getElementById("output").value = event.data.message;
}, false);

谢谢你的回答。 现在,我可以使用“window.parent.postMessage()”解决我的问题

从iframe的本地主机服务器页面,使用以下命令发送消息

window.parent.postMessage({ message: 'successfully connected'}, "*");
并从脱机页面捕获该消息

window.addEventListener('message', function(event) {
  document.getElementById("output").value = event.data.message;
}, false);

谢谢你的回答。 现在,我可以使用“window.parent.postMessage()”解决我的问题

从iframe的本地主机服务器页面,使用以下命令发送消息

window.parent.postMessage({ message: 'successfully connected'}, "*");
并从脱机页面捕获该消息

window.addEventListener('message', function(event) {
  document.getElementById("output").value = event.data.message;
}, false);

使用postMessage()在不同协议的帧之间进行对话。我的父页面上的类似文章处于脱机状态。因此,我无法向父级发送消息使用postMessage()的错误消息在“DOMWindow”上执行“postMessage”失败:提供的目标源(')与收件人窗口的源('null')不匹配。使用postMessage()在不同协议的帧之间进行对话。父级页面上的类似文章处于脱机状态。因此,我无法向父级发送消息使用postMessage()的错误消息在“DOMWindow”上执行“postMessage”失败:提供的目标源(')与收件人窗口的源('null')不匹配。使用postMessage()在不同协议的帧之间进行对话。父级页面上的类似文章处于脱机状态。因此,我无法向父级发送消息使用postMessage()的错误消息在“DOMWindow”上执行“postMessage”失败:提供的目标源(')与收件人窗口的源('null')不匹配。使用postMessage()在不同协议的帧之间进行对话。父级页面上的类似文章处于脱机状态。因此,我无法向父级发送消息。使用postMessage()的错误消息在“DOMWindow”上执行“postMessage”失败:提供的目标源(')与收件人窗口的源('null')不匹配。