【问题标题】:Multiple condition for phone number field in javascriptjavascript中电话号码字段的多个条件
【发布时间】:2020-05-15 11:54:22
【问题描述】:

我有以下代码:

$('.mobileNumber').keyup(function () {
   var mobile = $(this).val();
   var numericExpression = /^[0-9]+$/;

    if (mobile.length == 0 || mobile.length < 10 || !mobile.match(numericExpression)) {

     $(this).parent().parent().parent().find('.jp-error-msg-kstm').css('display','block');

 } else {

     $(this).parent().parent().parent().find('.jp-error-msg-kstm').css('display','none');
   }
});

我想要做的是每当我的 mobileNumber 字段为空白(即 o 长度),长度小于 10 并且它应该只跟随数字。如果是,则会出现错误消息,即.jp-error-msg-kstm,否则不会出现。 例如,如果我输入 1234567890,那么它不应该向我显示错误,而如果删除该值并使字段长度为 0 或小于 10,那么它应该会显示错误跨度 div。

【问题讨论】:

  • 您遇到了什么问题?

标签: javascript jquery logic


【解决方案1】:

只需使用.length

if (mobile.length < 10 || !mobile.match(numericExpression)) {

【讨论】:

  • 对不起,我用过但忘了在这里提及。它仍然无法正常工作。
【解决方案2】:

我用过

mobile.length == 0 仅在第一个 if 条件下。

所以代码变成了

    $('.mobileNumber').keyup(function () {
        var mobile = $(this).val();
        var numericExpression = /^[0-9]+$/;

        if (mobile.length < 10 || !mobile.match(numericExpression)) {

          if(mobile.length == 0){
            $(this).parent().parent().parent().find('.jp-error-msg-kstm').css('display','none');
          } else {
            $(this).parent().parent().parent().find('.jp-error-msg-kstm').css('display','block');
          }
      } else {
        $(this).parent().parent().parent().find('.jp-error-msg-kstm').css('display','none');
       }
     });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-11
    • 2022-01-18
    • 1970-01-01
    相关资源
    最近更新 更多