Re: Mozilla 是不是不支援javascript中event.keyC …

看板Web_Design作者 ( ^-^)時間20年前 (2004/12/28 19:14), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《ificould (不求品質只求度過難關..)》之銘言: : ※ 引述《TKirby ( ^-^)》之銘言: : : 推 ificould:參考了 也試了很久了 還是沒效果 >"< 61.62.165.171 12/28 : : 怎麼會沒用勒?? : : 可能問題出在javascript以外的地方 : : 你到這個網址看看 : : http://www.csie.ntu.edu.tw/~b88039/archive/testCol/javascript/event/ : : 隨便按些鍵, : : 看看有沒有類似網頁右邊範例輸出的結果 : 貼上我的檔案好了... : function ChkKey(e) { : var eve = (e?e:event); : var code = (eve.charCode?eve.charCode:eve.keyCode); : if (code > 95 || code < 106) { : alert("只能輸入數字鍵"); : return false; : } : } : 我的js 是用外部載入的... : 下面這行是HTML表單內的輸入欄位 : 編號:<input type="text" name="no" onkeypress="return ChkKey()" /> ^^^^^^^^^^^^^^^ 這樣就不對了, 你以無參數的方式呼叫 ChkKey() 但是 ChkKey需要一個參數 e 改成 onkeypress="return ChkKey(event);" 試試看 如果再不行的話,就學我給的那個網址裡面的方式用javascript設handler 而不要寫在html裡面 很多人都缺乏一個觀念, 寫在 onkeypress 裡面的東西其實是anonymous function 也就是說其實 當這個 text input 有東西輸入的時候,會執行的函式其實是這個 function _沒有名字_(event) { /* 不同瀏覽器會不一樣 */ return ChkKey(); } 如果用javascript指定,像是 form1.no.onkeypress = ChkKey; 這樣當有東西輸入的時候執行的函式才真正是 ChkKey 大家可以試著做個實驗,把 onkeypress 裡的值印出來 例如 alert(form1.no.onkeypress); 在IE會是 function anonymous(){return ChkKey()} Firefox 則是function onkeypress(event) { return ChkKey(); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.67 ※ 編輯: TKirby 來自: 140.112.30.67 (12/28 19:28)

61.62.28.226 12/29, , 1F
加上event 可以了耶.. 謝謝你喔 (茶)
61.62.28.226 12/29, 1F
文章代碼(AID): #11qK033z (Web_Design)
文章代碼(AID): #11qK033z (Web_Design)