I have a form in which
myForm.$dirty
gets set to true when i enter a value in text box
<input name="input" ng-model="myModel.text">
But the flag isn't setting to false when i delete all values from text box. Why is it so and how to rectify it.
$dirty means you've interacted with the form, so once you've typed anything, it's considered dirty.
Starting with version 1.1.1, theres a $setPristine function that will allow you restore a form to its pristine state, but for the moment, you'll have to figure out a workaround that fits your needs.