我要将一些数据从iframe
传递给父级。
iframe
代码
window.parent.postMessage({message: 'Test'}, "*");
父代码
window.addEventListener('message', function (e) {
alert('Received message 1 : ' + e.data.message);
document.getElementById('ExchangeID').value=e.data.message;
}, false);
这在Firefox,Chrome,Safari中运行良好。当我在IE9中运行时,出现e.data.message
未定义的错误。
这里缺少什么?
答案 0 :(得分:1)
来自Can I Use... page on Cross-document Messaging:
IE8-9中的部分支持仅指在框架/ iframe(不是其他标签/窗口)中工作。此外,IE 9及以下的无法使用postMessage 发送对象。
但是,您可以使用替代语法:
window.parent.postMessage("test", "*")