一区二区久久-一区二区三区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技術不同瀏覽器對回車提交表單的處理辦法,轉載需保留來源!

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

主站蜘蛛池模板: 欧美激情一区二区三区在线 | 国产91丝袜在线播放九色 | www.欧美视频 | 黑人一区二区三区中文字幕 | 四虎国产精品永久地址99新强 | 免费人成a大片在线观看动漫 | 国产精品麻豆一区二区 | 人成精品视频三区二区一区 | 日韩经典欧美精品一区 | 黄视频在线免费看 | 狠狠做五月深爱婷婷天天综合 | 高清不卡免费一区二区三区 | 色网在线免费观看 | 欧美一区二区三区gg高清影视 | 精品国产香蕉在线播出 | 久久狠狠第一麻豆婷婷天天 | 精品视频一区二区三区四区 | 韩国一级爽快片淫片高清 | 日韩在线播放中文字幕 | 亚洲一区二区三区不卡视频 | 成人ab片 | 91精品视频免费 | 在线观看污污网站 | 精品视频国产 | 精品视频在线免费 | 中文字幕美日韩在线高清 | 最新福利小视频在线播放 | 日本欧美国产精品第一页久久 | 91嫩草国产线免费观看 | 99精品视频在线成人精彩视频 | 亚洲欧美色一区二区三区 | 国产成人久久精品激情 | 五月婷婷丁香久久 | 大象蕉国产情侣 | caoporn人人| 爽爽影院色黄网站在线观看 | 欧美成人v视频免费看 | 看全色黄大色黄女视频 | 黄色小视频免费在线观看 | 色在线网站 | 黄色色视频 |