Javascript 在POST之前等待onload事件(无jQuery!)
我有一个函数,它使用一个onload事件,假设它看起来像这样Javascript 在POST之前等待onload事件(无jQuery!),javascript,ajax,callback,onload,Javascript,Ajax,Callback,Onload,我有一个函数,它使用一个onload事件,假设它看起来像这样 var doOnload = function(){ onload = function(){ //do stuff and return data return data; } onerror = function(){ //handle error return errormsg; } } 起初我使用了console.log输出,但现
var doOnload = function(){
onload = function(){
//do stuff and return data
return data;
}
onerror = function(){
//handle error
return errormsg;
}
}
起初我使用了console.log输出,但现在我需要处理数据。
doOnload函数由另一个函数调用。另一个函数创建一个iframe,并将数据写入表单,这与其他函数配合良好。现在填写完表格后,我想通过POST发送数据。这也很有效。只有doOnload函数返回“undefined”
iframe/表单填充函数如下所示:
//...
input = this.createInputElement('nameOfField1',
function1());
form.appendChild(input);
input = this.createInputElement('nameOfField2',
doOnload());
form.appendChild(input);
// ...
form.appendChild(input);
form.submit();
并在最后提交表格
函数“createInputElement(name,value)”创建一个具有属性name和value的输入DOM元素,并返回该元素。我试着处理回拨电话,但没有成功/做错了什么。我没有太多处理回调的经验
以下是createInputElement函数的外观:
this.createInputElement = function(name, value) {
var input = document.createElement("input");
input.name = name;
input.value = value;
return input;
}
请仅在js中提供提示,而不是在jQuery中,谢谢
那么,在onload事件完成并将数据写入form元素之后,如何发送Post呢
提前谢谢
问候,,
David为什么
doOnload
要返回其他的东西,而未定义
中没有返回
语句?谢谢您的回复。我在onload/onerror事件中添加了一个return语句。那么我应该将return语句移到事件之外吗?您能展示一个工作示例(比如在JSFIDLE上)吗?不清楚您的代码是做什么的。您的doUnload
函数只是创建了另外两个函数。根据给定的信息,doUnload
调用将为这两个函数设置窗口对象的属性onload
和onerror
。但是onload
应该从哪里获取变量数据
,为什么要返回它,以及希望返回到哪里。如前所述,你应该举一个更清楚的例子。