一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

表單Form的submit事件不響應的解決方法

一、問題描述
類比一下,我用input.select()做了測試,卻能響應select事件。這個原因先放一邊,我們看看先怎么把眼下的問題解決了。
不響應事件的代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
實際運行,不會有alert出來。
雖然用submit方法來提交表單有違Unobtrustive Javascript的原則,但有時候不得不用,比如做搜索提示(auto-complete)選中Item之后就需要用JS來提交搜索表單。
二、問題分析
既然本身不響應事件,那只有手工觸發這些事件了,確定手工觸發方案之前先回顧一下事件的注冊方式:
“原始”的注冊方式有兩種,看代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
這樣的注冊事件,會給form增加了一個方法onsubmit。所以,可以通過直接執行這個方法,等同于手工觸發了事件。
看代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
這樣可以得到一個alert。
但是在如今“先進”的DOM2標準注冊方式以及IE的注冊方式attachEvent已經很常用。這些注冊方式,onsubmit方法是不存在的,如果使用form.onsubmit()會直接報錯。
三、解決方案
當然“先進”的注冊方式本身也提供了手工觸發事件的解決方案,只是要針對DOM2標準和IE寫不同的程序,另外這個程序,對“原始”的注冊方式也一樣有效。請看代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
四、代碼總結
這里不再對各細節方法做說明,不熟悉的朋友請自行查閱相關資料。我們把整個代碼串起來:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
整個跑下來有個小問題,FX下,不需要form.submit(),直接把表單給提交出去了,所以這句也省掉了,原因知道的請回復。
這個demo在IE6/IE7/FX下測試通過。

JavaScript技術表單Form的submit事件不響應的解決方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美日韩另类在线观看视频 | 国产美女在线精品观看 | 国产免费久久精品99久久 | 一区二区视频免费看 | 精品综合网| 99精品视频在线观看re | 真实乱视频国产免费观看 | 蕾丝视频成人★在线观看 | 亚洲性久久 | 色播在线播放 | 国模337人人本艺术150p | 91最新视频 | 在线观看视频色 | 国产成人精品一区二区三区 | 亚洲欧美一区二区三区国产精品 | 涩涩久久 | 老司机日日摸夜夜摸精品影院 | 国产欧美在线观看精品一区二区 | 日本www色| 色婷婷综合欧美成人 | 欧美日韩一区二区三 | 亚洲精品tv久久久久久久久 | 国产精品极品美女自在线 | 久久久精彩视频 | 一道精品一区二区三区 | 伊人免费 | www.av在线播放 | 人成精品 | 91天堂素人精品系列网站 | www.亚洲一区二区三区 | 超级香蕉97视频在线观看一区 | 欧美爱 | 国产91激情对白露脸全程 | 99视频都是精品热在线播放 | 91啪国自产| 色欧洲| 国产精品自在线天天看片 | 国产美女激情视频 | 欧美人善zozσ性伦交 | 国产网站在线 | 中文在线1区二区六区 |