0

我正在制作一个数字键盘,我想在 jQuery 表单向导和验证中使用它。一切正常,但键盘不行:( 演示

$(function () {
  var keypad = $('#keypad');
  keypad.hide();

  $('input[type="text"]:not(#keypad)').on('click', function (e) {
    e.preventDefault();
    $(this).after(keypad);
    keypad.show();
  });
});

function addIt(cKey) {
  var id = $('#keypad').prev().attr('id');
  d = document.getElementById(id);
  d.value = (cKey.value == 'delete') 
    ? d.value.slice(0, -1) 
    : ((cKey.value == 'clear') ? "" : d.value + cKey.value);
}


演示

4

2 回答 2

1

将函数移动addIt到小提琴中的 HTML 部分。

<script>
    function addIt(cKey) {
        var id = $('#keypad').prev().attr('id');
        d = document.getElementById(id);
        d.value = (cKey.value == 'delete') ? d.value.slice(0, -1) : ((cKey.value == 'clear') ? "" : d.value + cKey.value);
    }
</script>

固定小提琴:http: //jsfiddle.net/BngRv/1/

于 2013-03-12T17:26:18.740 回答
0

将其放入您的加载块并删除每个按钮输入中的 onClicks:

$(function(){
    //rest of code before it here
    $('.keypad').click(function(){
        addIt($(this).val());
    });
});
于 2013-03-12T17:31:37.900 回答