【发布时间】:2017-07-02 07:26:20
【问题描述】:
目前我正在为 angularjs 开发一个 datepicker,它按预期工作。但是当我第二次尝试从 datepicker 中选择值时,该值并没有改变。以下是到目前为止我尝试过的代码 sn-p :-
HTML
<div id="dvFromDate" class='input-group date' datetimepicker ng-model="FromDate">
<input type="text" ng-model="FromDate" class="form-control" @*tooltips tooltip-template="dd/mm/yyyy"*@ required>
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
<script type="text/javascript">
$(function () {
$('#dvFromDate').datetimepicker({
format: 'DD/MM/YYYY'
});
});
</script>
AngularJs
app.directive('datetimepicker', function () {
return {
require: '?ngModel',
restrict: 'A',
link: function (scope, element, attrs, ngModel) {
if (!ngModel) return; // do nothing if no ng-model
ngModel.$render = function () {
element.find('input').val(ngModel.$viewValue || '');
}
element.on('dp.change', function () {
scope.$apply(read);
});
read();
function read() {
var value = element.find('input').val();
ngModel.$setViewValue(value);
}
}
}
});
我还在 select dropdown 的 selectionchanged 事件中将 datepicker 值设置为空字符串,如下所示:-
$scope.FromDate = '';
$scope.ToDate = '';
将下拉值设置为空字符串后,每当我从日期选择器中选择任何值时,值都会变为空。 任何形式的帮助将不胜感激。
【问题讨论】:
-
你能做一个小提琴吗?
-
请创建小提琴
-
请看小提琴:-Angular boostrap datepicker
-
每当我从 datepicker 中选择日期时,我都想查看文本输入的变化
-
你应该看看如何将 jquery 插件转换为 angular 指令。那里有大量资源可以帮助您更好地了解您想要实现的目标。像你一样混合 jquery 和 angular 不是正确的方法!还要看看如何在指令中访问父作用域
标签: jquery angularjs html twitter-bootstrap-3