如果输入已达到7位,请停止该功能

时间:2017-01-04 08:50:03

标签: javascript jquery function maxlength

所以基本上我有一个按钮.button,每按一次就会在我的输入#number上添加一个数字。 现在,当我的输入#number中已有7位数时,我希望该功能可以“停止工作”。

这是我的代码(工作正常):

  function nrtwo(hello){
            var das = $(hello).html();
            var tempNum = $("#number").val();
            $("#number").val(tempNum + '' + das);
            tempNum = null;
        };

        $(".button").click(function(){
            nrtwo(this);
        });

我在考虑这样的事情?

if ($("#number").attr('maxlength') == '7') {
                return false;
            }

感谢您的帮助。

5 个答案:

答案 0 :(得分:2)

当您达到7位数时,请尝试.length这是Number和非盲click事件:

工作jsFiddle

$(".button").click(function(){

 if ($("#number").val().length == 7) {
     $(this).unbind('click');
     return false;
 }else{
     nrtwo(this);
 }

});

答案 1 :(得分:0)

一种方法是使用if ($("#number").val().length == '7') { return false; } 属性。 请试试这个:

$('#add').click(function() {
  if ($("input").val().length != '7') {
     $('input').val(parseInt($('input').val())+1);
   }
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="number" value="999998"/>
<button type="button" id="add">Add</button>
fabric.Image.fromURL(url, function(oImg) 
{
    var scaling = 0.2;
    var rFilter = new fabric.Image.filters.Resize({
        resizeType: 'sliceHack'
    });
    oImg.resizeFilters.push(rFilter);
    oImg.applyFilters();

    oImg.set({
        left:   300, 
        top:    300, 
        scaleX: scaling, 
        scaleY: scaling
    });

    canvas.add(oImg);
    canvas.renderAll();
});

答案 2 :(得分:0)

您需要在点击事件本身中处理此方案。请参阅以下示例:

$(".button").click(function(){
  if ($("#number").val().length <= 7) {
    nrtwo(this);
  }
});

仅当输入的长度小于或等于7时,才会调用nrtwo方法。

答案 3 :(得分:0)

如果您只处理数字,您还可以在添加数字之前检查数值。

&#13;
&#13;
$('#add').click(function() {
  var value = parseInt($('#output').val());
  if(value <= 999999) {
    $('#output').val(value + 1);
  }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="add">Add</button>
<input type="text" id="output" value="999995" />
&#13;
&#13;
&#13;

答案 4 :(得分:0)

&#13;
&#13;
$('#number').keypress(function(event){
        var n = $(this).val();
        if(n.length == 7){
            event.preventDefault(); //stop character from entering input
        }
       if(event.which != 8 && isNaN(String.fromCharCode(event.which))){
           event.preventDefault(); //stop character from entering input
       }

   });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<input id="number"/>
&#13;
&#13;
&#13;