2012-03-28 66 views
0

我正在寫一個腳本來使頁面自動提交兩次。該腳本應該先按第一個提交按鈕,然後有一個小的延遲,然後按第二個。兩者都在同一文件上。Javascript如何自動提交

我在做什麼是:獲取文檔,然後使用document.GetElementByID('id_button')。click(),並有timeOut延遲第二次點擊。事情是,第一個按鈕工作正常,但第二個按鈕不起作用。我不知道爲什麼。我的方法是否正確?

+0

第一次提交完成後,原始頁面消失並且不再相關。如果要同時將數據發佈到多個服務器,則需要在解決方案中包含AJAX。 – mellamokb 2012-03-28 22:18:45

+0

它只有一個服務器,它只有一個提交和一個確認按鈕。 – MKII 2012-03-28 22:21:01

+0

重複:http://stackoverflow.com/q/7991152/1048572 – Bergi 2012-03-28 22:23:43

回答

0

對錶格有反應的狀態。

/Page.HTML 

/Page.HTML? washere=true 

/Page.HTML? washereagain=true 

可以通過腳本來識別

+0

等等,你是什麼意思?請你再解釋一下嗎? – MKII 2012-03-28 22:31:36

+0

當然....檢查網址參數,如果沒有提交。如果'washere = true',再次提交。如果washereagain = true'你提交了兩次.....非常低的水平,涉及頁面重新加載,但工程。 ... – Steen 2012-03-28 22:38:46

+0

我明白你的意思......但我不認爲它會與我嘗試使用的網站一起使用。它基本上只是一個「階段」,根據需要加載新屏幕,並在一個屏幕上提交併在另一個屏幕上提交。我想,即使有一個錯誤,我被帶到錯誤頁面,我仍然會得到相同的錯誤... – MKII 2012-03-28 22:43:45

0

什麼我做的是:獲取文檔,然後使用的document.getElementById( 'id_button')點擊(),

並非所有瀏覽器都支持點擊提交按鈕的方法,因此您的策略會失敗,因爲大量瀏覽器正在使用中。

您可以通過調用提交方法來提交表格。如果你想自動提交一次(這似乎是一個毫無意義的練習,但這是你的選擇),每次提交表單時都要設置一個cookie,並在頁面加載時檢查它,看看它提交了多少次。