2017-10-09 88 views
-1

我在js中創建了一個數獨遊戲。程序只允許1-9號碼。當我在我的android手機上運行它時,程序將接受所有的字母和數字。在電腦和手機上的javascript輸入差異

這是代碼在Android中無法使用。我能做些什麼來解決它。

在此先感謝!

$(document).ready(function() { 
    $("input").keydown(function (e) { 
     if ((e.shiftKey || (e.keyCode < 49 || e.keyCode > 57)) && (e.keyCode < 97 || e.keyCode > 105)) { 
      e.preventDefault(); 
     } 
    }); 
}); 
+0

ü意味着當你在文本中單擊它應該只顯示數字鍵盤嗎??? – krishnar

+1

是你的輸入'type ='number''? – jmargolisvt

+0

使用模式 krishnar

回答

1

爲什麼不乾脆讓所有的輸入,然後完善它它進入這個領域後:

$('input').on('input', function (e) { 
    $(this).val($(this).val().replace(/[^1-9]/g, ''); //remove anything not 1-9 
}); 
0

首先的 - 改變<input type="text"><input type="number">爲觸摸設備顯示數字鍵盤。

然後用正則表達式過濾您的輸入:

$(document).ready(function() { 
    $("input").keyup(function() { 
     $(this).val($(this).val().replace(/[^1-9]/g, '')); 
    }); 
}) 
相關問題