2013-05-20 9 views
5

Używam angularjs i mają formę gdzie chcę Umieść przycisk jest wyłączony, jeśli niektóre pola nie są wypełniane

Standardowym sposobem wydaje się być następujące:.

<form ng-app name="myForm"> 
    <label>Name</label> 
    <input type="text" name="name" ng-model="form.name" required> 
    <input type="submit" ng-disabled="myForm.name.$invalid"> 
</form> 

http://jsfiddle.net/YMSRU/

Jeśli jednak pomijam model z pola wejściowego, sprawdzanie poprawności nie działa i nie potrzebuję żadnych modeli na moich polach wejściowych (przesyłam mój formularz za pomocą dyrektywy ngUpload, więc jest on faktycznie wysyłany do akcji formularza w iframe).

Czy istnieje jakieś rozwiązanie, czy też powinienem dodać losowe modele tylko po to, aby proces sprawdzania poprawności działał? To wygląda na złe.

+1

Zgodnie z dokumentacją http://docs.angularjs.org/api/ng.directive:input.text wymagany model ng –

Odpowiedz

3

Można po prostu zrobić czek invalid na poziomie formy, wówczas nie ma potrzeby, aby zdefiniować model dla każdego wejścia:

<form ng-app name="myForm"> 
    <label>Name</label> 
    <input type="text" name="name" required> 
    <input type="submit" ng-disabled="myForm.$invalid"> 
</form> 
+1

Dzięki, ale obawiam się, że problem nadal występuje: http://jsfiddle.net/YMSRU/1/ – user1767586

0

brakuje Twojego modelu na swoim testowym tagu wejściowych: NG-Model =” form.name "

Powiązane problemy