我正在嘗試使用Angular的$ dirty標誌只提交表單中已更改的字段。
當我碰到單選按鈕組時,我錯過了更改字段列表中的更改。我有一個fiddle重現了我所看到的問題。最後一個單選按鈕被點擊,即使形式$髒更新時正確
<div ng-app="form-example" ng-controller="MainCtrl">
<form name="form" novalidate>
<input type="radio" name="myRadio" ng-model="myRadio" value="one" required>One<br />
<input type="radio" name="myRadio" ng-model="myRadio" value="two" required>Two<br />
<input type="radio" name="myRadio" ng-model="myRadio" value="three" required>Three<br />
<input type="radio" name="myRadio" ng-model="myRadio" value="four" required>Four<br />
<input type="radio" name="myRadio" ng-model="myRadio" value="five" required>Five<br /><br />
Form $dirty: {{form.$dirty}}<br />
Field $dirty: {{form.myRadio.$dirty}}<br />
Value: {{myRadio}}
</form>
</div>
字段的$髒標誌只會改變。
我在這裏錯過了什麼?並有這種行爲的解決方法?
novalidate屬性是否與FormController沒有設置輸入狀態有關? –
我已經嘗試使用和不使用,novalidate只是禁用HTML5驗證,並且僅在提交時。 –