Javascript 为什么我从';表格:$invalid';和'的$invalid属性;表格';?
我想根据窗体的状态禁用按钮($invalid),在我将窗体中的所有值设置为null后,我发现如果我写入:Javascript 为什么我从';表格:$invalid';和'的$invalid属性;表格';?,javascript,angularjs,Javascript,Angularjs,我想根据窗体的状态禁用按钮($invalid),在我将窗体中的所有值设置为null后,我发现如果我写入:console.log(“$scope.assignNewForm.$invalid:”+$scope.assignNewForm.$invalid)它将发出put为false,但如果我写:console.log($scope.assignNewForm)我可以找到表单的$invalid属性,该属性为true。这是同时发生的 把我的代码贴在下面: $scope.questionnaireTit
console.log(“$scope.assignNewForm.$invalid:”+$scope.assignNewForm.$invalid)
它将发出put为false,但如果我写:console.log($scope.assignNewForm)代码>我可以找到表单的$invalid属性,该属性为true。这是同时发生的
把我的代码贴在下面:
$scope.questionnaireTitleSelected = function(questionnaireTitle) {
$scope.assignForm.recipientType = null;
$scope.assignForm.assigneeName = null;
resetErrorState();
$scope.flags.readOnly = false;
$scope.recipientTypes = _.where($scope.questionnaires, {
questionnaireTitle: questionnaireTitle
});
disabledAssignBtn();
};
function disabledAssignBtn() {
if (!$scope.assignNewForm) {
return;
}
console.log($scope.assignNewForm.$invalid);
console.log($scope.assignNewForm);
$scope.flags.disabledAssignBtn = $scope.assignNewForm.$invalid || $scope.assignedError || $scope.flags.noQuestionnaires;
}
结果是:
在您可以在控制台上打开对象之前,对象的$invalid
属性可能已更改。发生这种情况是因为对象的属性是在折叠对象时计算的
当您将鼠标悬停在对象旁边的i
图标上时,该图标显示下面的值刚刚被计算过。添加代码这是不可能发生的。。需要查看您的代码。更新的问题。要检查表单中的更改值,请使用$dirty。