狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

不同瀏覽器對回車提交表單的處理辦法

admin
2010年11月25日 23:12 本文熱度 2858
  在瀏覽器中填寫表單的時,可以直接在“文本框”中敲擊“Enter”來提交表單,很是方便。條件是:

在IE和Firefox下
1、<form>屬性的“action”字段必填;

2、有一個type="submit"的“input”。

在Chrome和Safari下
滿足第一條即可。(注釋1)

  所以,如果要控制提交行為的話(比如,提交前檢查必填項是否已填),可以在type="submit"的“input”后添加Javascript“onXXX(比如onClick)”事件。而如果需要用異步交互來檢測相關字段,則無效了。因為return false是作為onreadystate=的子函數,并不能控制全局。這時就需要用到<form>的“onsubmit”屬性(注釋2)。比如:

HTML

view source

print?
1 <form name="form1" id="form1" action="act.php" method="post" onsubmit="myfn();return false;">
 myfn()是自己定義的函數:無論通過什么辦法(比如敲擊“enter”或點擊type="submit"(而不是type="button")的“input”按鈕)提交,都會觸發這個這個函數。于是,大可不必再在type="submit"的“input”后添加Javascript事件“onXXX”了。直接在“onsubmit”中控制,更直觀與統一,除非有意控制提交方式(是onClick還是什么)。
return false位于末尾,表示不提交本表單。提交表單的字句document.form1.submit()可以作為myfn()的一個選擇條件的分支。
總結:

  這樣,<form>有“action”和“onsubmit”屬性,有type="submit"的“input”的提交按鈕后,就可以在任何瀏覽器下(不行嗎?請給我反饋)實現使用“Enter”鍵和鼠標都可以對表單的相關字段進行異步(Ajax)和同步(單純的Javascript)檢查并予以提交。

其他:

1、如果使用type="button"來異步檢測相關字段呢?

  這樣,這個“input”必須得有一個事件觸發器。在IE和FF下,無法直接在文本框中按下“Enter”來提交表單。如果要的話,需要使用額外的函數來監聽用戶按下了什么,給出一個怎樣的反映(注釋3)。更糟糕的是,在Ch和Sa下,會忽略是否有type="submit"按鈕,而直接根據“action”屬性來提交表單,如此以來,便無法實現預期的檢測,可能還有更麻煩的后果。

2、如果不寫“action”屬性,直接異步提交表單呢?

  這樣,通過異步的方式提交表單,而不僅僅是檢測,這個屬性則沒有必要。而且還是多余。假如這樣能提供更好的用戶體驗,何樂而不為呢?呵呵。

【注釋】

1 在IE8,FF,Ch中測試有效。Opera和Sa沒有測試。參考了這篇文章(http://tieba.baidu.com/f?kz=669494938



該文章在 2010/11/25 23:12:01 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved