2016-10-25 59 views
0

我有一個文本框,應該只接受數字,因爲此文本是用於滾動編號的。我的下面的代碼服務於我的目的。僅包含數字的HTML文本

<html> 
<head><title>Sample Webpage</title></head> 
<body> 
<input type="text" name="roll_number" id="roll_number" value="25" placeholder="roll number" autocomplete="off" tabindex="1" maxlength="3" onkeypress='return event.charCode >= 48 && event.charCode <= 57'> 
</body> 
</html> 

但我在Firefox遇到問題。當我嘗試使用BACKSPACE/DELETE刪除卷號時,沒有任何工作。它也不接受這些密鑰。但是這在Chrome和IE中運行良好。應該是什麼修復?

+1

使用'''',如你提到你想HTML文本只包含數字 –

+0

@DonaldWu - 數字類型也接受字母。在鉻它接受「E」和在Firefox它接受所有的字符。 MaxLength也停止工作。 –

回答

1

甲快速的解決方案是同時檢查如果按下的鍵是「退格」,這樣就可以用這個修改您的代碼:

<input type="text" name="roll_number" id="roll_number" value="25" placeholder="roll number" autocomplete="off" tabindex="1" maxlength="3" onkeypress='return (event.charCode >= 48 && event.charCode <= 57) || event.keyCode == 8'> 
+0

Keycode = 8(Backspace)可以正常工作,但DELETE的127不起作用。 –

+1

@KPJoy刪除應該有keyCode 46,所以試試 'return(event.charCode> = 48 && event.charCode <= 57)|| event.keyCode == 8 || event.keyCode == 37 || event.keyCode == 38 || event.keyCode == 39 || event.keyCode == 40 || event.keyCode == 46' 以這種方式,您允許箭頭鍵,退格鍵和刪除。 – GiuServ

相關問題