itVincent Blog - Java Working Fun!

          技術(shù)引領(lǐng)時代!
          posts - 117, comments - 181, trackbacks - 0, articles - 12

          button在Firefox下點擊提交表單(form)的問題

          Posted on 2009-08-24 13:46 itVincent 閱讀(3786) 評論(6)  編輯  收藏 所屬分類: javascript

          【關(guān)鍵詞】Button Form FireFox
          【問題描述】 

                  使用Firefox3.0+打開頁面,點擊了一個<button onclick="doWork()"></button>去執(zhí)行doWork方法,但是doWork沒有執(zhí)行,表單卻提交了。另外IE6、7沒有此問題。

          【分析原因】
                  由于根據(jù)w3c標(biāo)準(zhǔn)<button>默認(rèn)的type為submit,也就是說如果button沒有聲明type的話,那此button就是相當(dāng)于一個submit,所以如果此button是在一個表單里的話,點擊它就會提交表單。然而IE6、7沒有嚴(yán)格按照此標(biāo)準(zhǔn)
          實現(xiàn),因此不會出現(xiàn)此問題。

          【解決辦法】
                  有兩種解決方法
                  方法1:
                  在<button>中加入onclick="return false",這樣禁止點擊時提交表單

                  方法2:
                  在<button>中加入type="button",聲明為button,這樣表單也不會提交了

          【避免此類問題的建議】 
                  為了解決跨瀏覽器的問題,最好是使用<button type="button" >顯式聲明為一個button

          *根據(jù)網(wǎng)友們的回復(fù),加上<input type="button" />為建議解決方式
                  

          Feedback

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2009-08-24 17:13 by 99讀書人
          寫的很好!

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2009-08-25 09:24 by HiMagic!
          應(yīng)該是執(zhí)行完doWork()才提交的吧。

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2009-08-28 14:43 by 雨中滴
          - -! 我感覺最有效的解決方法是廢棄 <button></button> 標(biāo)簽。
          使用<input type="button" /> ,這樣既沒有那個提交bug 也保證了通用性

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2009-10-12 11:06 by vanlin
          習(xí)慣了用 <input type="button" />

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2012-02-16 15:45 by ee
          頂頂頂

          # re: button在Firefox下點擊提交表單(form)的問題  回復(fù)  更多評論   

          2012-02-16 15:46 by ee
          哈哈哈
          主站蜘蛛池模板: 新河县| 赫章县| 营口市| 富源县| 万安县| 五家渠市| 纳雍县| 五寨县| 分宜县| 江西省| 兴仁县| 安福县| 鸡东县| 卢龙县| 洪洞县| 聂拉木县| 贵州省| 虞城县| 辉南县| 安康市| 乐业县| 江西省| 景谷| 石首市| 通州区| 商河县| 荃湾区| 台前县| 平凉市| 阿拉善盟| 淳化县| 赤峰市| 怀化市| 永福县| 盐源县| 普安县| 三亚市| 郁南县| 来凤县| 昌乐县| 日照市|