Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript表单提交()完成_Javascript_Jquery_Form Submit - Fatal编程技术网

JavaScript表单提交()完成

JavaScript表单提交()完成,javascript,jquery,form-submit,Javascript,Jquery,Form Submit,有没有办法调用javascript表单submit()函数或JQuery$.submit()函数,并确保它完成提交过程?具体来说,在表单中,我试图在IFrame中提交表单。从父窗体中,我正在提交带有以下代码的IFrame document.frames.IFRAME_Items.document.forms[0].submit(); 然后,父窗体保存并关闭。但是,当前在父窗体保存并关闭之前,IFrame没有完成post。是否有任何方法可以使用JQuery回调或JavaScript中的某些内容来

有没有办法调用javascript表单submit()函数或JQuery$.submit()函数,并确保它完成提交过程?具体来说,在表单中,我试图在IFrame中提交表单。从父窗体中,我正在提交带有以下代码的IFrame

document.frames.IFRAME_Items.document.forms[0].submit();

然后,父窗体保存并关闭。但是,当前在父窗体保存并关闭之前,IFrame没有完成post。是否有任何方法可以使用JQuery回调或JavaScript中的某些内容来确保在父窗体关闭之前完成此提交过程?

您可以做的最好的事情是在的帮助下异步提交iframe的窗体。这样,您就可以等待响应返回。它还提供了一个
success
回调处理程序,您可以使用该处理程序提交父页面的表单。

如果您的
来自外部网站,您将无法执行任何操作。请参阅:@adardesign这显然不是这样,因为他可以从父级访问iframe的表单这将是理想的,但我无法使用任何一种方法(ajaxForm或ajaxSubmit)处理iframe。
<form onsubmit="return controlParentForm();" id="parentForm">
...
</form>
var controlSubmitParentForm = 0;
function controlParentForm(){

   var ret = false;

   if (controlSubmitParentForm==0){

     controlSubmitParentForm = 1;
     document.frames.IFRAME_Items.document.forms[0].submit();
     setTimeout(controlParentForm, 200);

   }
   else if (controlSubmitParentForm==1){

     if (document.frames.IFRAME_Items.document.readyState=="complete"){
        controlSubmitParentForm = 2;
        document.getElementById("parentForm").submit();
     }
     setTimeout(controlParentForm, 200);

   }
   else if (controlSubmitParentForm==2){
       // controls for "parentForm"
       ret = true;
       controlSubmitParentForm = 0;
   }

   return ret;

}