【发布时间】:2019-02-25 14:06:44
【问题描述】:
我正在用 angularjs 材料构建一个 CRUD 应用程序。所以当我想添加一个新用户时,生日输入必须是<md-datepicker> 标签。
<md-datepicker ng-model="add.user.BirthDate" md-placeholder="Enter date"></md-datepicker>
这是 HTML 标签。
但是当我想编辑用户时,会出现模型必须是日期的错误
<md-datepicker ng-model="edit.user.BirthDate" md-placeholder="Enter date"></md-datepicker>
这是用于编辑,我在对话框中调用该功能,因为必须有用户的更新
////EDIT USER
//POP UP
$scope.showEdit = function (ev, user) {
$mdDialog.show({
controller: SampleController,
templateUrl: 'app/main/sample/edit.tmpl.html',
parent: angular.element(document.body),
targetEvent: ev,
clickOutsideToClose: true,
fullscreen: $scope.customFullscreen,
locals: {
user: user,
//map: map,
editUser: editUser
},
bindToController: true,
controllerAs: 'edit'
});
//FUNC
function editUser() {
$http({
method: 'PUT',
url: 'http://192.168.23.65/DetyreAPI/api/Client/UpdateClient',
data: {
FirstName: user.FirstName,
LastName: user.LastName,
BirthDate: user.BirthDate,
Address: user.Address,
Latitude: user.Latitude,
Longitude: user.Longitude
},
headers: {
'Content-Type': 'application/json'
}
}).then(function successCallback(response) {
$mdDialog.hide();
$scope.showUpdateAlert_Success();
}, function errorCallback(response) {
$mdDialog.hide();
$scope.showUpdateAlert_Error();
});
}
}
还有添加新用户的功能和对话框
///ADD NEW USER
//POP UP
$scope.showAdd = function (ev, user) {
$mdDialog.show({
controller: SampleController,
templateUrl: 'app/main/sample/add.tmpl.html',
parent: angular.element(document.body),
targetEvent: ev,
clickOutsideToClose: true,
fullscreen: $scope.customFullscreen,
locals: {
user: user,
addUser: addUser
},
bindToController: true,
controllerAs: 'add'
});
}
//FUNC
function addUser(value) {
$scope.user = {
};
$http({
method: 'POST',
url: 'http://192.168.23.65/DetyreAPI/api/Client/AddClient',
data: value,
headers: {
'Content-Type': 'application/json'
}
}).then(function successCallback(response) {
console.log(response.data);
if (response.data.message === 'Ju shtuat nje kontakt me sukses!') {
$scope.showData($scope.user);
$mdDialog.hide();
$scope.showAddAlert_Success();
} else {
$scope.showAddAlert_Error();
}
}, function errorCallback(response) {
$mdDialog.hide();
$scope.showAddAlert_Error();
});
}
【问题讨论】:
-
您的
edit.user.BirthDate可能不是有效的日期对象。你能分享一下那个模型的价值吗? -
您在编辑中分配给日期类型的日期对象类型是什么?
-
我只是更新它
-
@HimeshSuthar 我认为它可能是一个字符串
-
Error: The ng-model for md-datepicker must be a Date instance. Currently the model is a: string@Red @HimeshSuthar 这是我点击编辑图标时的错误
标签: angularjs datepicker