문제

javaScript 양식 제출 () 함수 또는 jQuery $ .submit () 함수를 호출하고 제출 프로세스를 완료하는 방법이 있습니까? 구체적으로, 양식 내에서, 나는 iframe 내에 양식을 제출하려고합니다. 부모 양식에서 다음 코드로 iframe을 제출하고 있습니다 ...

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

그런 다음 부모 양식이 저장되고 닫힙니다. 그러나 현재 IFRAME는 부모 양식이 저장되고 닫히기 전에 게시물을 완성하지 않습니다. 부모 양식이 닫히기 전에이 제출 프로세스가 완료되도록 jQuery 콜백이나 JavaScript의 무언가를 사용하는 방법이 있습니까?

도움이 되었습니까?

해결책

<form onsubmit="return controlParentForm();" id="parentForm">
...
</form>

JS :

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;

}

다른 팁

당신이 할 수있는 최선의 방법은 Iframe의 양식을 jQuery 양식 플러그인. 이렇게하면 응답이 반환 될 때까지 기다릴 수 있습니다. 또한 a success 부모 페이지 양식을 제출하는 데 사용할 수있는 콜백 처리기.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top