 <p>You can use <a href="https://docs.angularjs.org/api/ng/type/form.FormController" rel="nofollow">$setPristine()</a> for resetting the field state.</p> <p>HTML:</p> <pre><code>&lt;form name="myForm"&gt; &lt;input type="text" ng-model="data.test" ng-disabled="data.check"&gt; &lt;input type="text" ng-model="data.test2" ng-disabled="data.check"&gt; &lt;input type="checkbox" ng-change="reset()" ng-model="data.check" value="one"&gt; &lt;/form&gt; </code></pre> <p>JS:</p> <pre><code>$scope.resetForm = function() { $scope.data = { "test": "", "test2": "" }; // 'myForm' is the name of the &lt;form&gt; tag. $scope.myForm.$setPristine(); } </code></pre>