Установить значение в поле не работает (Inputmask RobinHerbots) - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть маска для денег, в формате: R $ 1.000,00, в которой числа уже входят в форматирование по центам (до запятой, справа налево).

Я смогнастроить маску отлично, в том числе работать на устройствах Android.Но я не могу установить динамическое значение для ввода, маска не применяется правильно.

Вот пример в jsfiddle:

 $(document).ready(function() {
  
  $(".money2").inputmask("decimal", {
  			numericInput: true,
        groupSeparator: '.',
        radixPoint: ",",
        digits: 2,
        autoGroup: true,
        autoUnmask: true,
        prefix: 'R$ ',
        placeholder: '0,00',
        androidHack: "rtfm",
        clearIncomplete: !0,
    });
    
    $("#test").val("35.000,00");
 });
body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#banner-message {
  background: #fff;
  border-radius: 4px;
  padding: 20px;
  font-size: 25px;
  text-align: center;
  transition: all 0.2s;
  margin: 0 auto;
  width: 300px;
}

button {
  background: #0084ff;
  border: none;
  border-radius: 5px;
  padding: 8px 14px;
  font-size: 15px;
  color: #fff;
}

#banner-message.alt {
  background: #0084ff;
  color: #fff;
  margin-top: 40px;
  width: 200px;
}

#banner-message.alt button {
  background: #fff;
  color: #000;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/inputmask.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/jquery.inputmask.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/inputmask.numeric.extensions.js"></script>

<div id="banner-message">
  <p>Test Mask</p>
  
<input class="money2" id="test" value="" type="tel" >

</div>

https://jsfiddle.net/t1cmdyL6/

1 Ответ

0 голосов
/ 26 апреля 2018

Это решение, которое вы ищете?

 $(document).ready(function() {
  
  //$("#test").val("35.000,00"); just set this in html to save performance

  $(".money2").inputmask("decimal", {
  			numericInput: true,
        groupSeparator: '.',
        radixPoint: ",",
        digits: 2,
        autoGroup: true,
        autoUnmask: true,
        prefix: 'R$ ',
        placeholder: '0,00',
        androidHack: "rtfm",
        //clearIncomplete: !0,
    });
    
    
 });
body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#banner-message {
  background: #fff;
  border-radius: 4px;
  padding: 20px;
  font-size: 25px;
  text-align: center;
  transition: all 0.2s;
  margin: 0 auto;
  width: 300px;
}

button {
  background: #0084ff;
  border: none;
  border-radius: 5px;
  padding: 8px 14px;
  font-size: 15px;
  color: #fff;
}

#banner-message.alt {
  background: #0084ff;
  color: #fff;
  margin-top: 40px;
  width: 200px;
}

#banner-message.alt button {
  background: #fff;
  color: #000;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/inputmask.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/jquery.inputmask.js"></script>

<script src="https://rawgit.com/RobinHerbots/Inputmask/4.x/js/inputmask.numeric.extensions.js"></script>

<div id="banner-message">
  <p>Test Mask</p>
  
<input class="money2" id="test" value="35.000,00" type="tel" >

</div>
...