我使用document.form.submit()函數來處理一個相當大的輸入表單(數百個字段,它是一個庫存應用程序)。我在用戶空閒了一段時間後調用了這個函數,我想保存他們輸入的任何數據。當我嘗試這個頁面重新加載(操作是#),但任何在字段中輸入的新文本都不會傳遞到REQUEST中,所以我不會將它放入數據庫中。是否有一些根本的原因,爲什麼會發生這種情況,或者是我的代碼只是不能很好地發揮作用(我使用EXTJS網格視圖來顯示錶單和用於跟蹤空閒時間的庫)? 謝謝, 羅伯特如何在將某人登出之前用數據提交表單?
0
A
回答
1
我想我把答案放在這裏。我發現是這樣做的: setTimeout('frm.submit();',2000); 導致頁面重新加載但未提交表單。當我這樣做: frm.submit(); 表單已提交且數據已通過。我不知道爲什麼第一種方式沒有工作,但我並不需要知道:)
+0
感謝您的回答,但在發佈我的結果之前我沒有看到他們。 – Robert 2008-09-26 15:17:39
0
服務器可能會排除輸入值。說如果你的服務器上的頁面是這樣的:
<form action="/page.cgi">
...
<input name="Fieldx" value=""/>
</form>
我認爲這將使該領域失效。或者,服務器操作可能會間接設置它。在JSF中,就像這樣。
<input name="Fieldx" value="#{bean.nullProperty}"/>
你在服務器上有什麼和你的瀏覽器是什麼?
0
我會嘗試捕獲HTML發佈請求,看看是否包含輸入字段。如果他們那麼你的服務器有問題。
但是關於你所說的,我認爲這是因爲你的瀏覽器處理JavaScript DOM的方式存在衝突。這可能是這種情況,如果你在表單上遺漏了提交按鈕並且它可以工作。
0
HTMLFormElement
對象的submit
方法應該只提交表單,因爲如果用戶點擊了提交按鈕。因此,如果表單的action
屬性設置爲#
,則它似乎會刷新頁面,因爲它將表單數據發送到同一頁面。
奇怪的是,當您將action屬性設置爲另一個頁面時仍然會執行此操作。
表格的method
屬性是否設置爲get
或post
?
相關問題
- 1. 如何將表單數據從HTML提交給某人的Skype帳戶
- 2. 如何在提交到數據庫之前將PHP表單分成兩部分?
- 3. 在提交之前使用php文件驗證表單數據
- 4. 如何在提交表單之前驗證廣播和數組?
- 5. 在提交表單之後但在處理之前使用jquery提出問題
- 6. 如何在提交到數據庫之前將表單值提交到確認頁面
- 7. 在提交表單之前更改數據
- 8. 在提交之前修改表單數據
- 9. 如何在使用javascript提交表單之前構建JSON
- 10. 如何在jquery中提交之前在textarea中顯示錶單數據
- 11. 在提交表單之前將數據保存到JS數組中
- 12. 如何將提交表單數據傳遞到彈出窗口
- 13. 在提交之前在jsp頁面中使用表單參數
- 14. 如何在JTable中提交表單之前獲取javaScript中的數據
- 15. 在提交之前檢查jQuery驗證的表單提交
- 16. 提交之前追加更多數據以形成表單?
- 17. 在提交實際表單之前接受彈出輸入
- 18. Ajax表單在淡出之前需要點擊兩次提交
- 19. Adobe Livecycle - 表單提交發生在現場退出之前
- 20. 在表單提交之前退出頁面
- 21. 如何在表單提交之前將列表追加到jquery-forms-plugin?
- 22. 如何在某個單詞之前提取數字?
- 23. PHP:在提交到數據庫之前驗證更新表單中的數據
- 24. 如何在DOM準備好之前阻止表單提交?
- 25. 如何在joomla提交表單之前驗證captcha
- 26. jQuery:如何在提交之前更改多個表單屬性
- 27. 如何在提交之前獲取jqgrid表單操作值?
- 28. 如何在Angular提交表單之前不更新模型?
- 29. 如何做jQuery表單在提交之前驗證html元素
- 30. 如何在jQuery中提交之前通過ajax驗證表單?
好吧我改變了表單動作到另一個頁面,發現當form.submit函數被調用時,頁面仍然刷新而不是轉到其他頁面。有人知道爲什麼會發生這種情況? – Robert 2008-09-26 14:52:24
然後我把我的form.submit從setTimeout函數中取出(以消除顯示popover div後的延遲),它工作正常!現在我必須弄清楚如何區分我是否應該註銷用戶... – Robert 2008-09-26 14:59:12