Javascript 验证后角度形状重置
我在表单上使用angular js进行验证,它工作正常,但在表单有效后,我发送ajax请求并使用jquery代码对其进行休息,因此我的表单仍然显示有效。以下是js代码片段:Javascript 验证后角度形状重置,javascript,jquery,angularjs,forms,validation,Javascript,Jquery,Angularjs,Forms,Validation,我在表单上使用angular js进行验证,它工作正常,但在表单有效后,我发送ajax请求并使用jquery代码对其进行休息,因此我的表单仍然显示有效。以下是js代码片段: var myApp = angular.module('myApp', []); myApp.controller('myController', function ($scope) { $scope.clearForm = function (formId) { $(formId)[0]
var myApp = angular.module('myApp', []);
myApp.controller('myController', function ($scope) {
$scope.clearForm = function (formId) {
$(formId)[0].reset();
console.log($scope.note['title'])
//$scope.note['title'] = null;
};
$scope.submitForm = function () {
if ($scope.noteForm.$valid) {
alert("valid");
//ajax request
$scope.clearForm('#noteForm');
}
}
});
如果我使用$scope.note['title']=null设置空值代码>清除后显示错误
我如何解决这个问题?我想要的是在休息之后,从应该进入初始状态 与在jQuery中清除表单不同,我更希望您在表单
上使用$setPristine()
方法,使表单以角度的方式成为原始的
。另外,只需执行$scope.note={}
即可清除表单字段
代码
$scope.clearForm = function (formId) {
$scope.noteForm.$setPristine(); //you should use setPristine that will make for pristine
$scope.note = {}; //this will clear a form values.
};