jquery.inputmask - 在" oncomplete"中设置值回调会导致错误的操作

时间:2015-09-18 00:35:10

标签: javascript google-chrome safari webkit jquery-inputmask

如果在" oncomplete"回调使用其他蒙版输入进行setVal动作,你可以在Chrome和Safary中看到不正确的反应,在FF中工作

oncomplete: function(e){
    $('.i-input-2').val($(e.currentTarget).inputmask('unmaskedvalue'));
}

演示:http://jsfiddle.net/serGlazkov/nxLzq82o/

2 个答案:

答案 0 :(得分:7)

好像你已经发现了jQuery输入掩码插件的一个关键错误。使用autoGroupdigitsOptional选项时,会有一些积极的插入位置处理。当与多个屏蔽输入实例结合使用时,它会在每次击键后将插入符号移动到索引0。

使用带有以下选项的currency掩码将为您提供最一致的界面。

$('.i-input-1').inputmask({
    alias: 'currency',
    rightAlign: false,
    digits: 2,
    oncomplete: function (e) {
        var currVal = $(e.currentTarget).inputmask('unmaskedvalue');
        copyValue1(currVal);
    }
});

$('.i-input-2').inputmask({
    alias: 'currency',
    rightAlign: false,
    digits: 2
});

function copyValue1(str){
    $('.i-input-2').val(str);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://dev.vanare.net/bundles/vanarewebsite/js/jquery.inputmask.bundle.min.js"></script>
<input type="text" class="i-input-1" value="100">
<input type="text" class="i-input-2" value="555" disabled="disabled">

答案 1 :(得分:1)

现在在3.2.2版中修复了这个错误