2017-12-09 1 views
1

Ich versuche, ungültig zu machen und Deaktivieren Sie die Schaltfläche zum Senden auf der Last der Seite, als nicht eingeben Text in Textfeld ist ungültig, aber mein Code funktioniert nicht, kann jemand Bitte geben Sie die Lösung an.

<div id="reg_bground">   
    <div id="formdiv" ng-app="myApp" ng-controller="valCtrl"> 
     <form name="myForm" novalidate> 
      <div style="font-family:calibri; font-size:30px; font-weight:bolder;"> 
       <span>Register:</span> 
      </div> 
      <div> 
       <span>Name:</span><br> 
       <input type="text" name="user" ng-model="user" required><br> 
       <p ng-show="myForm.user.$dirty && myForm.user.$invalid">*Please insert the name</p> 
      </div> 
      <input type="number"> 
      <input type="submit" ng-disabled="myForm.user.$dirty && myForm.user.$invalid"> 
     </form> 
    </div> 
</div>    

+0

Sie sollten klar sagen, wie es nicht funktioniert. – zezollo

Antwort

0

Der Feldinhalt gültig

$ ungültig Arbeits ist, wenn Sie einen Eingang und Eingang eingeben hat Ihr Muster nicht überein. Sie müssen $ error.required für Ihr Ziel verwenden.

follwing arbeiten

<div id="reg_bground"> 
    <div id="formdiv" ng-app="myApp" ng-controller="valCtrl"> 
      <form name="myForm" novalidate> 
       <div style="font-family:calibri; font-size:30px; font- 
     weight:bolder;"> 
        <span>Register:</span> 
       </div> 
       <div> 
        <span>Name:</span><br> 
        <input type="text" name="user" ng-model="user" required><br> 
        <p ng-show="myForm.user.$dirty && 
     myForm.user.$error.required">*Please insert the name</p> 
       </div> 
       <input type="number"> 
       <input type="submit" ng-disabled="myForm.user.$dirty && 
    myForm.user.$error.required"> 
      </form> 
     </div> 
1

Sie im Wesentlichen in der Taste für Behinderte Status einreichen für $dirty Zustand überprüfen.

<input type="submit" ng-disabled="myForm.user.$dirty && myForm.user.$invalid"> 

$dirty wird nur true gesetzt, wenn Benutzer mit dem myForm.user Eingang einmischte hat, was nicht der Fall beim Laden der Seite ist. Stattdessen versucht den $pristine Zustand überprüft (oder !$dirty)

<input type="submit" ng-disabled="myForm.user.$pristine || myForm.user.$invalid"> 
1

die schmutzige Prüfung in der Senden-Schaltfläche Löschen:

<input type="submit" ng-disabled=" ̶m̶y̶F̶o̶r̶m̶.̶u̶s̶e̶r̶.̶$̶d̶i̶r̶t̶y̶ ̶&̶&̶ ̶ myForm.user.$invalid"> 
Verwandte Themen