Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否启用粘贴到输入[类型=';日期';]?_Javascript_Angularjs_Date_Paste - Fatal编程技术网

Javascript 是否启用粘贴到输入[类型=';日期';]?

Javascript 是否启用粘贴到输入[类型=';日期';]?,javascript,angularjs,date,paste,Javascript,Angularjs,Date,Paste,在Chrome中似乎无法粘贴。我尝试过各种格式,包括yyyyy-MM-dd-MM/dd/yyyy,甚至一次粘贴一个组件(仅在月份或仅在年份),但什么都没有发生。我在一个angular应用程序中工作,我甚至尝试设置一个onpaste事件,将粘贴的内容推送到angular模型中,但它从未触发 以下是我所拥有的: HTML 我也导入datejs 目前,我从未在粘贴事件侦听器中点击过调试器语句。不会抛出任何错误,并且似乎没有在视图或模型中输入任何值 如何允许将日期粘贴到此输入中?我在2016年遇到了同样

在Chrome中似乎无法粘贴
。我尝试过各种格式,包括yyyyy-MM-dd-MM/dd/yyyy,甚至一次粘贴一个组件(仅在月份或仅在年份),但什么都没有发生。我在一个angular应用程序中工作,我甚至尝试设置一个
onpaste
事件,将粘贴的内容推送到angular模型中,但它从未触发

以下是我所拥有的:

HTML

我也导入datejs

目前,我从未在粘贴事件侦听器中点击过
调试器
语句。不会抛出任何错误,并且似乎没有在视图或模型中输入任何值


如何允许将日期粘贴到此输入中?

我在2016年遇到了同样的问题,并发现可以通过将输入包装到其他元素中来解决此问题

<div id="wrapped" onpaste="alert(11)">
    <input type="date" id="input1">
</div>


知道div可以用于“粘贴”事件,就可以修改输入数据。

我的解决方法如下:

const input = document.getElementById('my-input');

document.querySelector('body').addEventListener('paste', (e) => {
  if (document.activeElement !== input) {
    return;
  }

  const value = e.clipboardData.getData('text');

  input.value = value;
});
<div id="wrapped" onpaste="alert(11)">
    <input type="date" id="input1">
</div>
const input = document.getElementById('my-input');

document.querySelector('body').addEventListener('paste', (e) => {
  if (document.activeElement !== input) {
    return;
  }

  const value = e.clipboardData.getData('text');

  input.value = value;
});