我想通过使用$ dirty属性并相应地设置标志来检测用户何时在任何表单字段中输入值。毫不奇怪,这有效:
$scope.$watch('formDetails.$dirty', function() {
USR.userInputRecorded = true;
});
但我也想检测用户何时/是否清空所有字段并有效地将表单恢复到其原始空状态。下面的代码段不起作用,我不知道为什么。是否有办法观察表单何时更改回"不是脏"?
$scope.$watch('formDetails.$pristine', function() {
USR.userInputRecorded = false;
});
感谢。
答案 0 :(得分:0)
试试这个:
$scope.$watch('formDetails.$dirty', function(value) {
if (value === '') {
// field has been emptied;
your.form.$setPristine(true);
} else {
USR.userInputRecorded = true;
}
});