用jQuery从右到左掩码输入

时间:2014-10-20 23:02:28

标签: javascript jquery

我在jQuery中输入了以下掩码:

  $("#id_Account").mask("9999",{placeholder:"0"})

此文本框的当前行为是将零作为占位符来键入我需要的数字,然后在输入后输入其余的0' s。 但我想在输入后填写左侧的0,而不是右侧。

例如,我在texbox" 0000" (或者只是空白),然后我输入" 12",然后文本框显示此值:" 1200",但我真正想要的是这个值:" 0012&# 34;

2 个答案:

答案 0 :(得分:0)

听起来这是插件不支持的功能。它很容易实现自己,为什么不创建它(并将PR发送到插件添加它)?

这是让你开始的事情:

function prependMask(input,mask) {
  var m_len = mask.length, i_len = input.length; // get |mask| - |input|

  if i_len <= m_len {
    return Array(m_len - i_len).join(mask[0]) + input; // prepend mask of length (|m| - |input|) to input
  } else { 
    return input; // no need for mask
  }
}

答案 1 :(得分:0)

我用这样的东西实现了自己:

<input name="myaccount1" type="text" style="text-align:right" onchange="mask_account(this)">

这是功能:

function mask_account(field_account){
            var qty_chars = field_account.value.length;
            var zeros = ''
            for (i=0; i < 4 - qty_chars; i++ ){
                zeros= zeros + '0';
            }

            var new_value = zeros + field_account.value;
            field_account.value = new_value;
        }