<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    lycong

    關于text文本框 按回車鍵 何種情況下 submit-------- 從一個bugfix 問題中想到

                接到一個問題,大概描述如下:頁面有一text文本框,有一submit類型的按鈕,輸入內容后,按回車頁面只是刷新一下,但是沒有執行創建操作。而且文件夾名有如下限制:不能和之前創建文件夾同名,且非空。jsp中的內容簡化為如下: 

    <form> <tr>
     <td><input type="text" id="filename" /> </td>
    <td><input type="submit" onclick="return addFile();"  id="sub"/> </td>
    </tr> </form>


            其中addFile()函數會有上面提及到限制判斷,并且會返回boolean類型,當然符合條件時就返回true,不符合就返回false。理所當然當輸入內容后點擊submit按鈕會正常執行相關操作而且會正常執行限制判斷。可是奇怪的是,在IE下 在text框輸入內容后直接按回車確不能執行相關操作,只是頁面刷新了一下, 但是在FIREFOX下 按回車卻能正常執行操作和判斷。 之前第一時間就是想到應該在text文本框中加一個onkeydown的事件enter_file(),enter_file函數是當按下回車時就執行,并且函數中應該有這句代碼 document.getElementById('sub').click(); 就是說當回車時就執行submit按鈕的click操作。 貌似應該會正常執行操作的吧,可是又一奇怪問題出現了,就是在IE下,在文本框中輸入 a 后(假設之前沒有文件名為a的文件),然后快速按2下(更多下也可以),結果會跳過“不能創建重復文件名”的判斷,創建出2個相同名字a 的文件夾,而且例如輸入同名文件名后,彈出框會一閃而過,不會等點擊確認后才退出彈出框,但是在FIREFOX下卻是正常執行,也不會出現一閃而過的現象,就是快速按幾下也只是創建一個文件夾a。 之后百思不得其解,試過一些方法,比如把submit類型改為button類型,把onkeydown事件換成onkeypress或者onkeyup ,結果還是出現IE下快速按回車 創建2個同名文件夾,還是出現一閃而過的現象。
           初步判斷可能是ie和ff在text框按回車的響應不同,最后上網搜了一下,找到一個帖子 名為求解一個關于回車的問題 http://topic.csdn.net/t/20061128/14/5191186.html ,具體內容到那個帖子看看。抽取其中值得注意的地方如下:
       IE:       
      1.   只有一個text框時,(不管有沒有submit),直接觸發onsubmit   (form標簽的一事件屬性)
      2.   有多個text框時,觸發submit上的onclick,其默認行為為觸發onsubmit。  

    相對來說,ff的行為最復雜。       
      1.   有submit或button時,觸發submit或button的onclick,然后該onclick的默認行為會觸發onsubmit。  
      2.   沒有submit或button時,  
      2.1   只有一個text框時,觸發onsubmit;  
      2.2   有多個text框時,不觸發onsubmit。  

    因為看到當只有一個text框時,直接觸發onsubmit,就聯想到要在form標簽中加上onsubmit事件,于是把上面的代碼改為如下:
    <form onsubmit="return addFile()"> <tr>
     <td><input type="text" id="filename" /> </td>
    <td><input type="submit" id="sub"/> </td>
    </tr> </form>
    結果在IE下終于能成功操作,即是快速按幾下也只是創建一個文件夾,并且不在出現一閃而過的現象。 因此很多時候在IE下可能出現奇怪問題,換作FF下就沒問題了,Firefox支持JavaScript是正宗的。另外用firefox的插件 firedebug 來調試 javascript 程序 簡直太爽了。




    posted on 2008-05-28 21:03 cong 閱讀(1870) 評論(1)  編輯  收藏 所屬分類: JavaScript

    Feedback

    # re: 關于text文本框 按回車鍵 何種情況下 submit-------- 從一個bugfix 問題中想到 2008-06-12 00:42 XIN

    GOOD  回復  更多評論   


    My Links

    Blog Stats

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品第一国产综合野| 亚洲大尺码专区影院| 国产精品亚洲小说专区| 久久受www免费人成_看片中文| 亚洲视频国产精品| 99re6热视频精品免费观看| 亚洲精品国产成人99久久| 国产无遮挡裸体免费视频在线观看 | 免费无码毛片一区二区APP| 久久精品国产精品亚洲蜜月 | 全免费a级毛片免费看| 亚洲av中文无码乱人伦在线咪咕| 美女视频黄a视频全免费网站色窝| 亚洲av无码乱码国产精品| 亚洲精品免费在线观看| 亚洲电影唐人社一区二区| 114一级毛片免费| 亚洲av永久无码一区二区三区| 日韩人妻无码免费视频一区二区三区 | 日韩毛片免费在线观看| 免费人成网站永久| 亚洲精品无码专区在线在线播放| 国产真人无码作爱视频免费| 久久久久亚洲AV无码麻豆| 中字幕视频在线永久在线观看免费| 亚洲一区二区观看播放| 国产精品另类激情久久久免费| caoporn成人免费公开| 久久久久亚洲AV无码专区首| 免费国产成人高清在线观看网站| 国产精品无码亚洲精品2021 | 亚洲综合免费视频| 亚洲AV无码一区二区乱子仑| 亚洲?V无码成人精品区日韩| 91成人免费福利网站在线| 亚洲第一香蕉视频| 亚洲成av人在片观看| 99re这里有免费视频精品 | 亚洲国产系列一区二区三区| 国产日产亚洲系列最新| 亚洲人成免费电影|