有没有办法将日期粘贴到 Chrome 日期字段中?

有没有办法将日期粘贴到 Chrome 日期字段中?

在 Chrome 中填写表单时,HTML5 表单现在有一个漂亮的日期字段,Chrome 会呈现一个相当有用的日期选择器。

除非您有大量表格需要填写,否则这很好。

我想粘贴一个日期,但我找不到将日期粘贴到 Chrome 中的字段中的方法。

有人对我该如何做这件事有什么建议吗?

答案1

我遇到了同样的问题,但还需要能够粘贴到另一个日期字段。我做了与上述类似的操作,但让用户清楚地知道正在复制完整日期。

我的用例还包括需要从 datetime-local 类型字段复制并粘贴。

https://jsfiddle.net/h444uL45/23/

var control_pressed = false;

function changeInputType(oldObject, oType) {
  var newObject = document.createElement("input");
  newObject.type = oType;
  if(oldObject.size) {newObject.size = oldObject.size;}
  if(oldObject.value) {newObject.value = oldObject.value;}
  if(oldObject.name) {newObject.name = oldObject.name;}
  if(oldObject.id) {newObject.id = oldObject.id;}
  if(oldObject.className) {newObject.className = oldObject.className;}
  oldObject.parentNode.replaceChild(newObject,oldObject);
  newObject.select();
  return newObject;
}

function swapToText(date_type) {
    $('input[type="'+date_type+'"]').on("keydown", function(event) {
    if ((event.keyCode == 17) && (control_pressed != true)) {
      $(this).addClass("revert_date_to_text");
      changeInputType(this, "text");
      swapToDate(date_type);
      control_pressed = true;
    }
  })
}

function swapToDate(date_type) {
  $(".revert_date_to_text").on("keyup", function(event) {
    if ((event.keyCode == 17) && (control_pressed != false)) {
      $(this).removeClass("revert_date_to_text");
      if (date_type == 'datetime-local') {
        $(this).val($.format.date($(this).val().replace(/\//g,"-").replace("T"," ")+':00.000', "yyyy-MM-ddTHH:mm"));
      } else {
        $(this).val($.format.date($(this).val().replace(/\//g,"-"), "yyyy-MM-dd"));
      }
      changeInputType(this, date_type);
      swapToText(date_type);
      control_pressed = false;
    }
  })
}

$(function() {
  $.getScript('https://cdnjs.cloudflare.com/ajax/libs/jquery-dateFormat/1.0/jquery.dateFormat.min.js');
  swapToText('date');
  swapToText('datetime-local');
});

答案2

AutoHotKey 似乎是可行的方法,因此感谢 KickAss 在评论中提供的指点。

不像相当简单如CRTL+V但它确实有效并且开启了其他宏的乐趣!

相关内容