表单条目上的日期(使用ng-repeat)在提交时显示在表单上00/00/0000。
但是,一旦您选择编辑条目并更正日期(再次使用角度日期选择器),日期就会成功更正。
HTML(内部重复)
<div class="form-group col-xs-6">
<label class="form-label" for="inDateMman">Fecha Alta</label>
<datepicker date-format="dd-MM-yyyy">
<input type="text" class="form-control" id="inDateMman" name="inDateMman" ng-model="mManCtrl.addMuestrasForm.inDate"/>
</datepicker>
<p ng-show="formNewMueManual.inDateMman.$dirty && formNewMueManual.inDateMman.$invalid" class="error-message">La fecha de alta ha de tener el formato: dd/mm/yyyy</p>
</div>
POST功能
function addMuestra() {
var taskEltype = sharedDesktopFactory.getDesktopProperty("type");
$scope.$parent.$parent.deskCtrl.loading = true;
if( vm.origin == 1 ) { // Acceso a desktop desde Proyecto
var idTaskEl = sharedDesktopFactory.getDesktopProperty("idTaskEl");
mueManualesService.addMuestra(idTaskEl, taskEltype.id, vm.addMuestrasForm, vm.is_project)
.then(function succesCallback(response){
if(response.response.success !== undefined) {
vm.updateList(); // Actualizamos lista
vm.resetFormModels(); // Reiniciamos Formulario
vm.formActive = false;
//vm.updateList(); // Actualizamos lista
} else {
$rootScope.$broadcast('msg', response);
}
}).catch(function errorCallback(response) {
$rootScope.$broadcast('msg', response);
}).finally(function finallFunction(response){
$scope.$parent.$parent.deskCtrl.loading = false;
});
} else if( vm.origin == 2 ) { // Acceso desde formulario
// Añadimos muestra filtrada a la lista
vm.muestrasManuales.push($filter('trfMuestrManualesForm')(vm.addMuestrasForm,
{id: vm.muestrasManuales.length + 1,
id_subtype:taskEltype.id}));
// Reiniciamos Formulario
vm.resetFormModels();
vm.formActive = false;
vm.updateList(); // Actualizamos lista
} else { // Origen desconocido
$rootScope.$broadcast('msg', {response:"Fallo al añadir Muestra. Origen de datos desconocido.", state:false});
$scope.$parent.$parent.deskCtrl.loading = false;
}
}
更新功能
function updateMuestra() {
var muestra = {};
$scope.$parent.$parent.deskCtrl.loading = true;
if( vm.origin == 1 ) { // Acceso a desktop desde Proyecto
mueManualesService.updateMuestra(vm.addMuestrasForm)
.then(function succesCallback(response){
if(response.response.success !== undefined) {
vm.resetFormModels(); // Reinciamos Formulario
vm.editMuestra = false;
vm.formActive = false;
vm.updateList(); // Actualizamos lista
} else {
$rootScope.$broadcast('msg', response);
}
}).catch(function errorCallback(response) {
$rootScope.$broadcast('msg', response);
}).finally(function finallFunction(response){
$scope.$parent.$parent.deskCtrl.loading = false;
});
} else if( vm.origin == 2 ) { // Acceso desde formulario
// Obtenemos muestra actualizada
muestra = $filter('trfMuestrManualesForm')(vm.addMuestrasForm,
{id: vm.addMuestrasForm.id,
id_subtype:vm.addMuestrasForm.id_subtype})
// Creamos nuevo array substituyendo la muestra antigua con la version actualizada
vm.muestrasManuales = vm.muestrasManuales.map(function(el){
if( el.id == muestra.id )
return muestra;
else
return el;
});
// Reiniciamos Formulario
vm.resetFormModels();
vm.editMuestra = false;
vm.formActive = false;
vm.updateList(); // Actualizamos lista
} else { // Origen desconocido
$rootScope.$broadcast('msg', {response:"Fallo al actualizar Muestra. Origen de datos desconocido.", state:false});
$scope.$parent.$parent.deskCtrl.loading = false;
}
}
这似乎是由ng-repeat引起的一个约束性问题,但我不确定。非常感谢任何帮助。