2016-05-22 19 views
5

का उपयोग करके एक फॉर्म मान्य करें मैं कोणीय-सामग्री का उपयोग करके एक फॉर्म को कैसे सत्यापित कर सकता हूं, मुझे कार्यक्षमताओं की आवश्यकता है: 1) सबमिट करें क्लिक करें यदि आवश्यक फ़ील्ड खाली हैं तो त्रुटि संदेश दिखाएं। 2) फॉर्म फ़ील्ड मान्य नहीं होने पर पोस्ट अनुरोध (सबमिट से बचें) न भेजें। अगला कोड सबमिट करने से बचें लेकिन यह क्लिक करते समय त्रुटि संदेश नहीं दिखाता है, केवल तभी जब प्रत्येक इनपुट फ़ील्ड से कर्सर बाहर जा रहा हो।कोणीय-सामग्री

<form name="userForm"> 
<md-input-container> 
    <input name="email" placeholder="Email" data-ng-model="vm.registerUserData.email" required /> 
    <div ng-messages="userForm.email.$error" ng-if='userForm.myControl.$dirty'> 
     <div ng-message="required">This is required!</div> 
    </div> 
</md-input-container> 

<md-input-container> 
    <input name="Password" placeholder="Password" data-ng-model="vm.registerUserData.password" required /> 
    <div ng-messages="userForm.Password.$error"> 
    <div ng-message="required">This is required!</div> 
    </div> 
</md-input-container>        

<md-input-container> 
    <md-button id="registerUser" value="Register" class="md-raised md-primary" ng-click="userForm.$valid && vm.registerUser()" aria-label="login" ng-disabled="login.loginForm.$invalid()"> 
     Create 
    </md-button> 
</md-input-container> 
</form> 

उत्तर

15

आप 2 चीजें खो रहे हैं।

पहला:type="submit" अपने md-button तत्व में जोड़ें।

दूसरा: अपने form तत्व को novalidate जोड़ें:

ध्यान दें कि novalidate ब्राउज़र की देशी फ़ॉर्म सत्यापन अक्षम करने के लिए प्रयोग किया जाता है।

तुम भी बजाय form तत्व पर ng-submit का उपयोग कर बटन पर ng-click उपयोग करने पर विचार करना चाहिए।

<form name="userForm" novalidate ng-submit="userForm.$valid && vm.registerUser()"> 
    <md-input-container> 
     <input name="email" placeholder="Email" data-ng-model="vm.registerUserData.email" required /> 
     <div ng-messages="userForm.email.$error" ng-if='userForm.myControl.$dirty'> 
      <div ng-message="required">This is required!</div> 
     </div> 
    </md-input-container> 

    <md-input-container> 
     <input name="Password" placeholder="Password" data-ng-model="vm.registerUserData.password" required /> 
     <div ng-messages="userForm.Password.$error"> 
      <div ng-message="required">This is required!</div> 
     </div> 
    </md-input-container>        

    <md-input-container> 
     <md-button type="submit" id="registerUser" value="Register" class="md-raised md-primary" aria-label="login" ng-disabled="login.loginForm.$invalid()"> 
      Create 
     </md-button> 
    </md-input-container> 
</form> 
+0

धन्यवाद झोन, यह सही काम करता है। बस एक और बात, क्या आप जानते हैं कि जैसे ही मैं इनपुट फ़ील्ड में टाइप करना शुरू करता हूं, त्रुटि संदेश को छिपाना/साफ़ करना संभव है? –

+0

अपने मॉड्यूल पर सीधे 'ngMessages' जोड़ने का प्रयास करें। –