Angularjs 角带日期选择器不';t更新现有模型值
我正在使用angularjs SPA项目中的AngularStrap日期选择器。使用ngModel双向绑定编辑现有记录时,Angular不会检测到日期字段的更改,即使我通过更新另一个非日期字段强制表单保存,新日期也不会在后端更新。以下是我的html文件中的相关部分:Angularjs 角带日期选择器不';t更新现有模型值,angularjs,datepicker,breeze,angular-strap,Angularjs,Datepicker,Breeze,Angular Strap,我正在使用angularjs SPA项目中的AngularStrap日期选择器。使用ngModel双向绑定编辑现有记录时,Angular不会检测到日期字段的更改,即使我通过更新另一个非日期字段强制表单保存,新日期也不会在后端更新。以下是我的html文件中的相关部分: <input name="DecisionDatePicker" id="ddpID" type="text" class="form-control input-medium" tabindex="14" placehold
<input name="DecisionDatePicker" id="ddpID" type="text" class="form-control input-medium" tabindex="14" placeholder="{{vm.format}}"
data-date-format="MM-dd-yyyy"
data-ng-model="vm.formData.dateDecision"
data-ng-required="vm.decisionDateRequired"
bs-datepicker />
我在js文件中没有做任何特殊的事情。我使用breezejs进行数据处理,它在其他领域工作良好。
我做错了什么?非常感谢您的帮助。我也遇到了同样的问题,我用一个自定义指令解决了这个问题,该指令在bs datepicker发送模糊事件时更新模型:
angular.module('moduleName').directive('updateModelOnBlur',
['$parse', function($parse) {
return {
restrict: 'A',
require: 'ngModel',
link: function (scope, elm, attrs) {
elm.bind("blur", function (event) {
scope.$apply(function () {
var model = $parse(attrs.ngModel);
model.assign( scope, elm.context.value );
});
});
}
};
}]
);
我知道这只是一个破解,而不是问题的最终解决方案。但是,如果你陷入困境并想继续前进,有时黑客可能会有用
如果要在更新模型之前操作日期格式,还可以在指令中包含$filter service。;) 我正在努力解决一个类似的问题(Breeze实体是从timepicker更新的,但entityChanged事件未被调用)。你有没有找到解决办法?我也有这个问题。我也有同样的问题