我使用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. 登錄之前提交表單Laravel 4
- 2. 如何將表單數據從HTML提交給某人的Skype帳戶
- 3. 如何在提交到數據庫之前將PHP表單分成兩部分?
- 4. 在提交之前使用php文件驗證表單數據
- 5. 如何在使用Django提交表單之前將值添加到表單中?
- 6. 如何在提交表單之前驗證廣播和數組?
- 7. 在提交表單之後但在處理之前使用jquery提出問題
- 8. 保存數據表格之前提交
- 9. 如何在提交到數據庫之前將表單值提交到確認頁面
- 10. 如何在提交前將表單數據保存到數據庫中
- 11. 在提交表單之前更改數據
- 12. 在提交之前修改表單數據
- 13. 在提交之前驗證所有表單數據
- 14. 如何將表單數據提交到數據庫並將某人重定向到URL?
- 15. 如何在使用javascript提交表單之前構建JSON
- 16. 如何在表單提交之前使用jquery設置屬性
- 17. 如何在表單提交之前禁用struts 2驗證?
- 18. 如何在jquery中提交之前在textarea中顯示錶單數據
- 19. 在提交表單之前將數據保存到JS數組中
- 20. 如何將提交表單數據傳遞到彈出窗口
- 21. 在提交之前在jsp頁面中使用表單參數
- 22. 如何在JTable中提交表單之前獲取javaScript中的數據
- 23. 如何記住提交之前在表單中輸入的數據
- 24. Rails表單驗證在提交之前出現在頁面加載之前
- 25. $ str_result在提交表單前出現
- 26. 如何在提交表單之前在jquery中等待?
- 27. jQuery的表單在IE提交沒有驗證之前提交
- 28. 在提交之前檢查jQuery驗證的表單提交
- 29. 在表單提交之前發出ajax請求,並在完成ajax後提交數據
- 30. 如何在event.preventDefault();之後提交表單
好吧我改變了表單動作到另一個頁面,發現當form.submit函數被調用時,頁面仍然刷新而不是轉到其他頁面。有人知道爲什麼會發生這種情況? – Robert 2008-09-26 14:52:24
然後我把我的form.submit從setTimeout函數中取出(以消除顯示popover div後的延遲),它工作正常!現在我必須弄清楚如何區分我是否應該註銷用戶... – Robert 2008-09-26 14:59:12