2009-07-02 84 views
0

當用戶點擊提交按鈕時,我想要提交表單。但是,在此之前,我想要一個窗口彈出並讓他們填寫一些數據。一旦他們這樣做,他們關閉該子窗口,我想要POST請求。發起POST請求,執行操作,然後完成發佈請求 - 如何?

這是可能,如果是的話如何?窗口關閉後我只需要幫助,我如何使POST請求繼續?

感謝所有

+0

是否希望將子窗口中的數據與原始帖子一起提交? – Stobor 2009-07-02 22:21:19

+0

不,子窗口不會提交任何內容。只是一些額外的信息:子窗口實際上會觸發父窗口的功能,告訴它「一切正常」,並可以提交表單。 – Abs 2009-07-02 22:24:22

回答

1

你可以做這樣的事情。(注意代碼簡化,你也許可以更好地構建它)

這是在您的主要文檔中的形式:

var childFilled = false; 
myForm.onsubmit = function() { 
    if(!childFilled) { 
     window.open(...); 
     return false; 
    } 
}; 

function submitFormFromChild() { 
    childFilled = true; 
    myForm.submit(); 
} 

並在窗口的代碼,你有這樣的事情:

window.onunload = parent.submitFormFromChild; 

未經檢驗的,未經證實,但一般的概念是這樣的=)

0

需要明確的是:你的意思是問(並在問題中提出)如何攔截瀏覽器中的表單提交。

您發佈的標題意味着您在詢問如何執行異步HTTP POST操作,執行其他操作,然後等待該HTTP POST操作完成。整個過程並不一定與用戶交互相關,並且不一定與HTML表單提交有關,並且它完全不同於你想要詢問的內容(並在問題中提出)。