Javascript 在POST之前等待onload事件(无jQuery!)

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输出,但现

我有一个函数,它使用一个onload事件,假设它看起来像这样

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
应该从哪里获取变量
数据
,为什么要返回它,以及希望返回到哪里。如前所述,你应该举一个更清楚的例子。