首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery输入日期掩码不起作用

Jquery输入日期掩码不起作用
EN

Stack Overflow用户
提问于 2017-06-24 13:08:23
回答 2查看 4.6K关注 0票数 0

我已经搜索过其他示例,但我似乎就是不能让我的日期输入掩码工作。我试着将我的代码与我得到的代码进行比较,但似乎找不到这里可能缺少的内容。

下面是HTML的代码:

代码语言:javascript
复制
     <td> <div class="form-group">
     <div class="input-group">
     <div class="input-group-addon">
     <i class="fa fa-calendar"></i>
     </div>
      <input type="text" class="form-control" data-inputmask="'alias': 
    'dd/mm/yyyy'" data-mask>
             </div>
             </div></td>

下面是javascript的代码:

代码语言:javascript
复制
    <!-- jQuery 2.2.3 -->
    <script src="plugins/jQuery/jquery-2.2.3.min.js"></script>
    <!-- Bootstrap 3.3.6 -->
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <!-- DataTables -->
    <script src="plugins/datatables/jquery.dataTables.min.js"></script>
    <script src="plugins/datatables/dataTables.bootstrap.min.js">
    </script>
    <!-- SlimScroll -->
    <script src="plugins/slimScroll/jquery.slimscroll.min.js"></script>
    <!-- FastClick -->
    <script src="plugins/fastclick/fastclick.js"></script>
    <!-- Select2 -->
    <script src="plugins/select2/select2.full.min.js"></script>

    <!-- InputMask -->
    <script src="plugins/input-mask/jquery.inputmask.js"></script>
    <script src="plugins/input-
     mask/jquery.inputmask.date.extensions.js"></script>
   <script src="plugins/input-mask/jquery.inputmask.extensions.js">
   </script>
    <!-- date-range-picker -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.2/moment.min.js"></script>
    <script src="plugins/daterangepicker/daterangepicker.js"></script>    
    <!-- AdminLTE App -->
    <script src="dist/js/app.min.js"></script>
    <!-- AdminLTE for demo purposes -->
    <script src="dist/js/demo.js"></script>
    <!-- Bootstrap 3.3.6 -->
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <!-- AdminLTE App -->
    <script src="dist/js/app.min.js"></script>
    <!-- page script -->
    <script>
    $(function () {
    //Initialize Select2 Elements
   $(".select2").select2();
    //Datemask dd/mm/yyyy
   $("#datemask").inputmask("dd/mm/yyyy", {"placeholder": "dd/mm/yyyy"});
  //Datemask2 mm/dd/yyyy
  $("#datemask2").inputmask("mm/dd/yyyy", {"placeholder": 
 "mm/dd/yyyy"});
  $("#example1").DataTable();
  $('#example2').DataTable({
  "paging": false,
  "lengthChange": false,
  "searching": false,
  "ordering": false,
  "info": false,
  "autoWidth": true
    });

   });
    </script>

提前谢谢你。

EN

回答 2

Stack Overflow用户

发布于 2017-11-03 17:15:00

至于2017.11.03,他们更新了插件,但没有更新文档:https://github.com/RobinHerbots/Inputmask/blob/4.x/README_date.md

所有别名都将替换为1个通用datetime别名,它可以接受所需datetime格式的说明符。

我想,所有记录在案的日期别名都已经删除了。

当前版本的一个解决方案是使用别名'datetime‘和附加参数'inputFormat':'mm/dd/yyyy’以下是我的工作示例:

代码语言:javascript
复制
<input name="birtdaydate" type="text" placeholder="MM/DD/YYYY" data-inputmask="'alias': 'datetime','inputFormat': 'mm/dd/yyyy'">

因此,对于您的任务,您可以使用:

代码语言:javascript
复制
<input type="text" class="form-control" data-inputmask="'alias': 'datetime','inputFormat': 'dd/mm/yyyy'">

顺便说一句,我从这个包中包含了整个jquery.inputmask.bundle.js。

票数 3
EN

Stack Overflow用户

发布于 2020-05-03 20:42:00

我知道现在有点晚了,但也许这对其他打开这个帖子的人有帮助。

如果我理解您的问题,日期存储在数据库中,就像这样的2020-08-22,并且您应用了掩码'00/00/0000',所以输入中的值是20/20/0822,不是吗?

如果是这样的话,让它工作的关键是在将值放入输入的value属性之前格式化它。

代码语言:javascript
复制
<input type="text" class="form-control" id="inputBirthdate" name="birthdate" value="{{ $p->birthdate ? $p->birthdate->format('d/m/Y') : $p->birthdate }}" placeholder="dd/mm/aaaa">

value属性中的三元是为了避免尝试格式化空值。

因此,当您将下面的掩码应用于日期输入时,日期格式将与掩码的格式相匹配,一切都将完美地工作。

代码语言:javascript
复制
$('#inputBirthdate').mask('00/00/0000');

我从一个laravel项目的刀片文件中提取了这个示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44732980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档