Javascript识别卡号

标签 javascript dom-events onkeyup

我使用一段 JavaScript 代码来识别用户输入的信用卡号类型。我对 JavaScript 不太了解,并且正在使用在网络上找到的代码。我已经让它正常工作了,但我希望有人能向我解释为什么特定部分会这样工作。

当用户开始输入信用卡号时,JavaScript 函数使用的值与该号码不同。例如,当我输入 3 时,charCode 变量为 51。我只是想了解如何从 3 得到 51,以便我可以将此函数用于其他卡类型。

JavaScript:

<script type="text/javascript">
function handleKeypress(inCardNumber,e) {
    var inCardNumber = document.form.cardNumber;

    var charCode;
    if(e && e.which) {
        charCode = e.which; // For Firefox
    }
    else if(window.event){
        e = window.event;
        charCode = e.keyCode; // For IE
    }

    if (inCardNumber.value.length === 1) { 
        switch (charCode) {
        case (48):
            swapVISA.src = "/images/icons/payments/VISA-dim.png";   
            break;
        case (49):
            swapVISA.src = "/images/icons/payments/VISA-dim.png";
            break;


etc

HTML

onkeyup="handleKeypress(this,event);"

最佳答案

查看 this page 末尾的彩色表格对于 ASCII id 列表。和here too .

但我建议阅读所有页面。

简要说明:

键盘上的每个键都分配有一个 ASCII ID 映射。 所以 Enter 是 13,Esc 是 27,依此类推。

关于Javascript识别卡号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18003054/

相关文章:

javascript - KDevelop 脚本在 `view.selection()` 上给出错误

javascript - knockoutjs 中的滑动 Action 绑定(bind)

javascript - 从 TinyMCE 内容动态填充一个 div

javascript - 为什么在 Javascript 游戏中不触发 onkeyup 事件

javascript - 我想在 html 中使用 addEvent 而不是 onkeyup

javascript 表单返回但无法正常工作

javascript - jQuery 追加 html 元素

javascript - 可拖动元素

javascript - EventEmitter 触发一次,请求在此后挂起

javascript - 将绑定(bind)函数绑定(bind)和取消绑定(bind)到事件