標籤:style blog code java http tar
總結:
1、如果form裡面只有一個input type=text,那麼無論有沒有submit按鈕,在input中斷行符號都會提交表單。如果不想斷行符號提交,需要再加一個input type=text,然後設定display:none.
2、如果form裡面多於一個input type=text,那麼必須有一個submit按鈕才可以斷行符號提交表單。
按鈕可以是input也可以是button,他們應設定type=submit。如果唯寫button而不寫type,那麼IE下type=button,FF下則是type=submit。
3、如果form裡面多於一個input type=text,並想實現斷行符號提交表單,又不想在頁面中出現原生的submit按鈕。比如:你想通過一個帶hover的圖片串連,並通過js指令碼來實現華麗的驗證及表單提交……
可以加上一個input type=submit 並設定display:none在form裡—— 但是!這僅僅對FF等有效。在IE下就會非常悲劇……如果希望IE生效,需要做以下的事情:
<input type="submit" style="display:block;overflow:hidden;width:0px;height:0px;position:absolute">
為什麼非要費勁的用form的預設斷行符號提交,而不在input中監聽keydown事件,等到code=13時使用javascirpt調用form對象的submit()方法?
前提如果你的form targtet!=_blank,那麼你可以實現你想要的。
但是一旦target=_blank,根據我的實踐,在keydown事件中進行submit到_blank
—— 這個新視窗定會被IE給block掉……(順便提一下,如果是在click事件裡調用form的submit方法,無論是本視窗還是新視窗,在IE中都不會被block,懷疑是IE的防彈窗廣告策略)
以上可以實現的效果:斷行符號提交查詢、新視窗、多input text、不出現原生的button。
原文:http://hi.baidu.com/wangworks/blog/item/92c30d11f4d91b0c213f2e3e.html