【问题标题】:Check input while typing (number only)输入时检查输入(仅限数字)
【发布时间】:2017-12-27 18:00:48
【问题描述】:

我想在键入时检查输入的值,但我的代码似乎不起作用(在 sn-p 但 MVC VS 2013 上工作)
我的代码有问题吗?

$(document).ready(function(){

        $('#txtAge').keyup(function(){
            var pattern = /^\d+$/;
            if(pattern.test($(this).val()) && $(this).val()!='' ){

                $("#age_error_message").hide();
                $("#txtAge").css('border-bottom', '2px solid #34F458');
            }
            else if ($(this).val() =='') {
                $("#age_error_message").html("Please enter your age");
                $("#age_error_message").show();
                $("#txtAge").css('border-bottom', '2px solid #F90A0A');
                
            }
            else {
                $("#age_error_message").html("Should contain number only");
                $("#age_error_message").show();
                $("#txtAge").css('border-bottom', '2px solid #F90A0A');
                
            }

        });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js">
</script>
Age: <input name="age" id="txtAge" type="text" class="btn-sm form-control " placeholder="Your age" />
<span class="error-form btn-sm text-danger" id="age_error_message"></span>

【问题讨论】:

  • 您的代码在这里运行良好。有什么问题?
  • 你的控制台有错误吗?

标签: javascript jquery html


【解决方案1】:

像这样改变。你的代码工作正常

$('#txtAge').keyup(function(){
        var pattern = /^\d+$/;
        if(pattern.test($(this).val()) && $(this).val()!='' ){

            $("#age_error_message").hide();
            $("#txtAge").css('border-bottom', '2px solid #34F458');
        }
        else if ($(this).val() =='') {
            $("#age_error_message").html("Please enter your age");
            $("#age_error_message").show();
            $("#txtAge").css('border-bottom', '2px solid #F90A0A');

        }
        else {
            $("#age_error_message").html("Should contain number only");
            $("#age_error_message").show();
            $("#txtAge").css('border-bottom', '2px solid #F90A0A');

        }

    });

已验证.. https://jsfiddle.net/knv8grt6/

【讨论】:

  • 我没有看到代码有任何变化。您拥有 OP 代码的准确副本。
【解决方案2】:

似乎我的代码不起作用,因为我在“脚本”标签中放置了多个函数。当我创建新的“脚本”标签然后放入我的代码时,它工作正常。谁能解释一下?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-29
    • 2010-11-22
    • 2019-08-02
    相关资源
    最近更新 更多