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

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

條件是:
在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
復制代碼 代碼如下:
<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沒有測試。
復制代碼 代碼如下:
chrome在表單中敲回車鍵會觸發提交表單
一個登錄口在IE、firefox下敲回車后用js通過ajax驗證成功后進行跳轉,幾個輸入框寫在了一個form中,當用戶輸入用戶密碼后觸發ajax進行判斷,此時IE和firefox都不會進行進行form的提交,且form中沒有submit.而chorm和safari都會把此時input所有的form進行submit.

以后ajax的話,切記不要寫在form當中.

2 這篇文章
復制代碼 代碼如下:
chrome 瀏覽器上避免回車提交表單
之前在論壇上發過一貼,問:

"在chrome瀏覽器上
我改變回車按鍵或者讓它無效也可以" 的問題,終無解

問題當時是為了避免回車提交表單引出的,現在這個問題到是解決了,其實很簡單,只怪自己沒想到

在Form的提交事件上動手腳:

onsubmit=“MySubmit();return false;"

MySubmit()可以用來做提交時的判斷,如可一用另一個隱藏的表單完成自定義的提交任務。

這個問題有點菜,但的在chrome上改變回車事件卻不好搞,有知情者還望告知。

3 參考以前的文章
同時在IE和FF獲取KeyCode
以前一直在IE8中測試網站,后來寫的一部分含有Ajax的代碼出現了故障,不得已下載了Firefox以及它的插件Firebug,才發現,FF不支持windows.event事件。于是換了一種思路。
HTML
<input type="password" name="psw" id="loginpsw" onkeypress="submit1(event)"/>
Javascript
復制代碼 代碼如下:
function submit1(e){
var isie = (document.all) ? true : false;//判斷是IE內核還是Mozilla
var key;
if (isie)
key = window.event.keyCode;//IE使用windows.event事件
else
{
key = e.which;//3個按鍵函數有一個默認的隱藏變量,這里用e來傳遞。e.which給出一個索引值給Mo內核(注釋1)
}
if(key==13)
send1('loginemail','loginpsw');//觸發的事件,可自定義
}

JavaScript技術不同瀏覽器對回車提交表單的處理辦法,轉載需保留來源!

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

主站蜘蛛池模板: 国产三级网页 | 性满足久久久久久久久 | 国产精品自在线拍 | 国产欧美日韩综合精品无毒 | 欧美人的性视频 | 男女男精品视频免费观看 | 激情小说激情图片 | 9久re在线观看视频精品 | 欧美午夜性视频 | 久久夜色精品国产欧美 | 亚洲欧美日韩精品香蕉 | 四虎国产精品免费观看 | 久久国产一区二区 | 国产精品每日更新 | 国产美女在线播放 | 一级做a爰片性色毛片黄书 一级做a爰片性色毛片男 | 精品一区二区三区在线观看l | 亚洲综合激情九月婷婷 | 国产欧美日韩高清专区ho | 五月天激情婷婷婷久久 | 日本高清一区二区三区水蜜桃 | 国产精品成人网 | 丁香六月婷婷综合激情动漫 | 国产精品专区第二 | 99精品久久秒播无毒不卡 | 国产成人亚洲综合 | 岛国毛片在线观看 | 亚洲六月丁香六月婷婷蜜芽 | 亚洲91在线 | 黄色网址视频在线观看 | 草草影院禁18在线观看 | 国产一区二区免费 | 久久婷婷久久一区二区三区 | 精品久久久久久久久久中文字幕 | 青草久久精品 | 99久久精品免费看国产一区二区三区 | 亚洲成片在线观看12345ba | 韩国毛片在线观看 | 亚洲区欧美区小说区图片区 | 图片区小说欧洲区 | 97精品国产自在现线免费观看 |