似乎在Chrome浏览器中无法粘贴。我尝试了各种格式,包括yyyy-MM-dd、MM/dd/yyyy,甚至仅粘贴一个组件(仅月份或仅年份),但没有任何反应。我正在使用angular应用程序,我甚至尝试设置onpaste事件将粘贴的内容推送到angular模型中,但它从未触发。
以下是我的代码:
HTML
我也导入了datejs库。
目前,我在粘贴事件监听器中从未触发
我该如何允许将日期粘贴到此输入框中?
以下是我的代码:
HTML
<input date-field type='date' ng-model='dateOfBirth'/>
Angular指令:
'use strict';
angular.module('angularcoreApp').directive('dateField', function($filter) {
return {
require: 'ngModel',
link: function(scope, element, attrs, ngModelController) {
element[0].addEventListener('paste', function () {
debugger;
alert(arguments);
}, false);
ngModelController.$parsers = [];
ngModelController.$parsers.push(function(data) {
//View -> Model
var date = Date.parseExact(data, "yyyy-MM-dd");
ngModelController.$setValidity('date', date!=null);
return date;
});
ngModelController.$formatters = [];
ngModelController.$formatters.push(function(data) {
//Model -> View
return $filter('date')(data, "yyyy-MM-dd");
});
}
}
});
我也导入了datejs库。
目前,我在粘贴事件监听器中从未触发
debugger
语句。没有任何错误被抛出,似乎没有任何值被输入到视图或模型中。我该如何允许将日期粘贴到此输入框中?