當用戶點擊提交按鈕時,我想要提交表單。但是,在此之前,我想要一個窗口彈出並讓他們填寫一些數據。一旦他們這樣做,他們關閉該子窗口,我想要POST請求。發起POST請求,執行操作,然後完成發佈請求 - 如何?
這是可能,如果是的話如何?窗口關閉後我只需要幫助,我如何使POST請求繼續?
感謝所有
當用戶點擊提交按鈕時,我想要提交表單。但是,在此之前,我想要一個窗口彈出並讓他們填寫一些數據。一旦他們這樣做,他們關閉該子窗口,我想要POST請求。發起POST請求,執行操作,然後完成發佈請求 - 如何?
這是可能,如果是的話如何?窗口關閉後我只需要幫助,我如何使POST請求繼續?
感謝所有
你可以做這樣的事情。(注意代碼簡化,你也許可以更好地構建它)
這是在您的主要文檔中的形式:
var childFilled = false;
myForm.onsubmit = function() {
if(!childFilled) {
window.open(...);
return false;
}
};
function submitFormFromChild() {
childFilled = true;
myForm.submit();
}
並在窗口的代碼,你有這樣的事情:
window.onunload = parent.submitFormFromChild;
未經檢驗的,未經證實,但一般的概念是這樣的=)
需要明確的是:你的意思是問(並在問題中提出)如何攔截瀏覽器中的表單提交。
您發佈的標題意味着您在詢問如何執行異步HTTP POST操作,執行其他操作,然後等待該HTTP POST操作完成。整個過程並不一定與用戶交互相關,並且不一定與HTML表單提交有關,並且它完全不同於你想要詢問的內容(並在問題中提出)。
是否希望將子窗口中的數據與原始帖子一起提交? – Stobor 2009-07-02 22:21:19
不,子窗口不會提交任何內容。只是一些額外的信息:子窗口實際上會觸發父窗口的功能,告訴它「一切正常」,並可以提交表單。 – Abs 2009-07-02 22:24:22