出于某种原因,我的表单不希望在提交后重置。我有一个类型为submit
的按钮和一个类型为button
的按钮。使用类型为button
的按钮时,表单会重置,但不会使用其他按钮。
我也在使用var vm = this
。
提交的代码:
vm.submit = function(form) {
if (!form.$invalid) {
vm.showQuestion(vm.indexOfQuestion);
vm.putAnswer();
form.$setPristine();
}
}
<button class="button" type="submit" ng-click="vm.submit(testForm)">
Volgende vraag
</button>
button
类型按钮的代码:
vm.resetForm = function(form) {
form.$setPristine();
}
<button class="button" type="button" ng-click="vm.resetForm(testForm)">
Test
</button>
我的问题是,为什么在单词按钮中使用$setPristine()
时表单不会重置,但它适用于普通按钮?如何在点击submit
按钮后提交后 重置?
答案 0 :(得分:0)
我不确定其原因是什么原因,但使用$setPristine()
重置表单可以通过添加$timeout
函数来实现。
vm.submit = function(form) {
if (!form.$invalid) {
vm.showQuestion(vm.indexOfQuestion);
vm.putAnswer();
$timeout(function() {
form.$setPristine();
});
}
}