如何在输入标签类型编号中加上限制

时间:2018-03-19 17:40:57

标签: angularjs html5 input

我有像这样的标签输入

<div class="form-group col-md-3">
     <label class="lb">Valor total</label> 
     <input type="number" ng-model="subTotalProduto"
            ng-keyup="calculaValorProdutos()"
            id="idValorTotalProdutoP"
            class="form-control "  />                     
 </div>  

我需要设置maxlength="15,4"的限制 更具体,我需要在我的输入999999999999999,9999或类似此掩码###############,####

的内容中使用此功能

我试着看看网络,但所有吸毒剂都在我的情况下工作..我现在不知道为什么..所以我在这里问... 它可以是有角度的,jquery

2 个答案:

答案 0 :(得分:0)

尝试这样的事情:

ng-pattern="/^\d{1,15}(\.\d{1,4})?$/"

如果您的输入与某些特定模式匹配,它应该作为一个简单的正则表达式来测试。

您可以对其进行测试here

这也是一个有效的Plunker

答案 1 :(得分:0)

似乎有点奇怪,但这个解决方案解决了我的问题

 $(function() {
          $('#idValorTotalProdutoP, #idValorUnitarioProduto, #idProdutoQuantidade, #idValorIcmsNota,#idValorFreteNota, #idValorSeguroNota, #idValorTotalP, #idFunruralNota, #idValorTotalNotaProdutor, #idAlicotaIcmProduto, #idBaseCalculoProduto').on('change keyup input', function() {
            match = (/(\d{0,15})[^.]*((?:\.\d{0,4})?)/g).exec(this.value.replace(/[^\d.]/g, ''));
            this.value = match[1] + match[2];
          });
        });