【发布时间】:2017-09-24 02:20:47
【问题描述】:
我一直在寻找这个问题的答案并遇到了几个帖子,但没有一个对我有用。
我想做一些简单的事情。我有一个在表单变脏之前不可见的按钮。如果我手动弄脏表单,这将非常有用。但是,我正在保存数据。加载表单时,会填充保存的数据,但以这种方式更新后端数据时,表单并不脏。
所以,我想我只是手动将表单设置为脏。但我收到“未定义”错误。
$scope.myForm = > undefined
$scope.$myForm => undefined
myForm = > returns the form object
myForm.myField = > returns the field
myForm.myField.$dirty => returns undefined
myForm.myField.$setDirty() = > returns "$setDirty is not a function"
this (inside my controller) = > returns and empty object
我正在使用角度 1.6.6 我读了: Angular.js programmatically setting a form field to dirty,
How to explicitly set a text box in a form to dirty?,
How to set a particular field in a form to dirty in angularjs 1.3
我的基本形式:
<div ng-controller="appCtrl">
<form name="myForm">
<input name="myField" ng-model="myField" />
<div ng-click="doSomething()" ng-show="myForm.myField.$dirty">Submit</div>
</form>
</div>
我添加了一个显示我遇到的问题的 plunker。 https://plnkr.co/edit/ZUWywfOj329g6sviHIZf?p=preview
【问题讨论】:
标签: angularjs forms validation angular1.6