通过 jquery 在日期 <input> 框中自动添加斜杠/符号

新手上路,请多包涵

(我发现了几个问题但没有答案,所以我提出了问题)

如何在输入/输入日期时在 <input> 框中添加自动斜杠/符号?

示例:当键入 02 或任何日期、月份、年份数字时,jquery 将在输入框的 2 数字后自动添加 / 符号,如 02/12/2016

请检查 jsfiddle 示例: https ://jsfiddle.net/rjkdd9j6/

HTML:

 <input type="text" id="your-id" value="dd/mm/yy">

jquery 或 JS 是否有任何简单的解决方案?

原文由 Aariba 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答

这样的事情会起作用。还要检查附加的 JSFiddle。

 $( document ).ready(function() {
    $('#your-id').bind('keyup','keydown', function(event) {
    var inputLength = event.target.value.length;
    if(inputLength === 2 || inputLength === 5){
      var thisVal = event.target.value;
      thisVal += '/';
      $(event.target).val(thisVal);
    }
  })
});

https://jsfiddle.net/ahmedhawas7/rjkdd9j6/3/

您还可以使用像这样的 Jquery 库的输入掩码库: https ://github.com/RobinHerbots/jquery.inputmask

原文由 Ahmed Hawas 发布,翻译遵循 CC BY-SA 3.0 许可协议

将 onkeydown 事件处理程序附加到您的 <input> 框,只要输入框值的长度为 2 或 5,就在其上附加一个“/”。

小提琴:- https ://jsfiddle.net/nuh4dy6j/`

 var input = document.querySelector('input');
input.addEventListener('keydown', ev => {
  var ipLength = ev.target.value.length;
  if(ipLength ===2 || ipLength ===5) {
    ev.target.value += '/';
  }
});

原文由 Tarun Garg 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题