如何使Adyen SDK在IE和Edge上运行

时间:2019-04-24 08:24:04

标签: html sdk adyen

我正在使用Adyen SDK 1.9.4设置在线支付。 它可以在Chrome,Safari,Opera和Firefox上正常运行,但在IE和Edge上会引发Javascript错误。

SCRIPT5009:未定义“ chckt”

“ chckt”应该是在加载Adyen SDK javascript库时初始化的对象。

我尝试将代码剥离回简单的html页面,但仍然出错。 我也尝试过与Adyen支持人员联系,但是在收到数十封电子邮件之后,我距离解决该问题还很近。

<!DOCTYPE html>
<html class="html">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Test checkout</title>
    <script type="text/javascript"
            src="https://checkoutshopper-test.adyen.com/checkoutshopper/assets/js/sdk/checkoutSDK.1.9.4.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

</head>
<body>

<h1>Test</h1>

<script type="text/javascript">
    $(document).ready(function () {
        test_chckt();
    });

    function test_chckt()
    {
        console.log('chckt is: ' + typeof chckt);
        console.log(chckt);
    }
</script>

</body>
</html>

代码应输出:
chckt是:object
对象

但是在IE和Edge中,输出为:
chckt是:undefined
SCRIPT5009:未定义“ chckt”

在此问题上的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

不需要$(document).ready()。您只需说console.log(chckt)就可以了。也许cb具有不同的作用域,但找不到它。如果您确实想要,可以尝试window.chckt