var js_1 = "<script type="text/javascript" src="https://xxxx.yyy.appl.js"> </script>"
var js_2 = <script type="text/javascript">JUMBO.submission.onComplete(function(response) { alert('hello'); console.log(response); }); </script>
$('.form-section').append(js_1); ---> line 3
$('.form-section').append(js_2); ---> line 4
在正常情况下JUMBO
对象应该在appl.js
启动后定义,但在我的方案中,我收到错误,指出JUMBO
未定义。
我的发现:
如果它是常规append
方法,因为它是同步调用,它不会成为问题但是js_1
是异步调用,在此line 3
执行之前,{ {1}}正在执行并收到错误。
我尝试过line 4
方法来解决它,但没有运气。任何帮助都会得到回报。
注:
必须将 $.getScript, Deferred
插入到DOM中,以便生成所需的html。
答案 0 :(得分:0)
使用$.getScript
$.getScript("https://xxxx.yyy.appl.js", function() {
JUMBO.submission.onComplete(function(response) {
alert('hello');
console.log(response);
});
});
在加载脚本后将执行回调。