由于缺少正文标记,因此未触发Javascript Body OnLoad事件

时间:2013-07-12 08:45:57

标签: javascript javascript-events

我正在尝试使用javascript整合3D安全支付逻辑。 当我将信用卡信息发布到银行时,我得到了回复html ..这个html将屏幕重定向到银行的3D密码屏幕

<html>
    <head>
    <title>MDpay default response template for web</title>
    </head>
    <body bgcolor="#02014E" OnLoad="OnLoadEvent();" >
    <form name="downloadForm" action="https://katmai.est.com.tr/mdpayacs/pareq" method="POST">
     <!-- Some Input Fields -->
    </form>
    <SCRIPT LANGUAGE="Javascript" >


    function OnLoadEvent() {
    document.downloadForm.submit();
    }

    </SCRIPT>
    </body>
    </html>

如果我们想在弹出屏幕中打开此html,OnLoadEvent不会被触发:

var popup = window.open('','');
popup.document.write("'"+data+"'");
popup.focus();

如果这确实有效,那就是好事。我在体内调用onload函数,所以我不在乎OnLoad中要调用的函数是什么。

var popup = window.open('','');
popup.document.write("'"+data+"'");
popup.document.body.onload();
popup.focus()

但是,我们不想在弹出窗口中执行此操作,我们不想打开新的标签页或页面。我们想在同一个屏幕上执行此操作,我们从用户那里获取值。所以我将返回的html写入div,但因为在一个html中没有2个body标签,所以浏览器不包含新的body标签其中包括OnLoad函数名..

document.getElementById('vpos').innerHTML=data;
document.downloadForm.submit() // this is the code that works in OnLoad function.if a write that code statically of course it works, but this code logic can always change. 

我将如何解决这个问题。希望我很清楚..

0 个答案:

没有答案