我尝试从 PayPal Ipn.php 脚本建立通信(当收到“已完成”消息时 - 该部分经过测试并且运行良好),以及包含提交按钮的表单原始页面。这个想法是点击提交按钮。
这两个页面使用相同的协议在同一个域上。
这是我在 Ipn.php 脚本上的脚本:
$click = "<script>
window.postMessage('Completed', 'http://www.example.com');
</script>";
echo $click;
echo "test"; // I receive it.
经过进一步测试,接收部分可以正常工作,但发送部分(上图)不能正常工作。
这是我在原始表单上的脚本,其中包含提交按钮:
$(window).load(function() {
window.addEventListener('message', receiver, false);
function receiver(e){
if (e.origin == 'http://www.example.com'){
if (e.data == 'Completed') {
alert(e.data);
e.source.postMessage('OK', e.origin);
$("#submit").click();
} else {
alert(e.data);
e.source.postMessage('FAIL', e.origin);
}
}
}
;})
到目前为止的结果:不起作用,发送部分不起作用(经过测试接收部分)。
在此先感谢您的帮助。