gpt4 book ai didi

javascript - 异步加载脚本?

转载 作者:行者123 更新时间:2023-11-29 15:29:05 24 4
gpt4 key购买 nike

编辑:我想将表单中的输入数据保存到 Firebase 数据库中

带有 id="field0" 的输入和带有 onClick"submitPost()" 的按钮

<form>
<input id="field0" name="ePost" type="text" value="">
<button type="submit" class="btn" onclick="submitPost()">Submit</button>
</form>

无法将 firebase.js 放入头部。所以就这样解决了。如果我将片段一个一个地添加到控制台中,它似乎可以工作。但是当我同时将它们全部加载到控制台时出现错误。

var script   = document.createElement("script");
script.type = "text/javascript";
script.src = "https://cdn.firebase.com/v0/firebase.js";
document.head.appendChild(script);

var myDataRef = new Firebase('https://eloquatest.firebaseio.com/');
myDataRef.on('child_added', function(snapshot) {
var post = snapshot.val();
});

function submitPost(e) {
var myDataRef = new Firebase('https://eloquatest.firebaseio.com/');
var name = $('#field0').val();
myDataRef.push({name: name});
$('#field0').val('');
}

这是上面的例子:https://jsfiddle.net/hbaecklund/7mnns4dk/5/

我需要异步加载脚本才能工作吗?但是下面不起作用?

$.ajax({
url: 'https://cdn.firebase.com/v0/firebase.js',
dataType: 'script',
cache: true,
success: function() {
var myDataRef = new Firebase('https://eloquatest.firebaseio.com/');
myDataRef.on('child_added', function(snapshot) {
var post = snapshot.val();
});
function submitPost(e) {
var myDataRef = new Firebase('https://eloquatest.firebaseio.com/');
var name = $('#field0').val();
myDataRef.push({name: name});
$('#field0').val('');
};
}
});

最佳答案

试试这个,使用脚本标签的加载事件:https://jsfiddle.net/7mnns4dk/6/

基本上只需使用:

script.load = function() {
// enter code that needs the script to be loaded here
}

它还可以在您编写时与 jQuery 一起使用,只需移动 submitPost 函数,以便可以通过按钮访问它:https://jsfiddle.net/7mnns4dk/7/

关于javascript - 异步加载脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36592002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com