2014-07-01 5 views
6

पर खो दिया है इस कोड में। यह प्रत्येक चरित्र टाइप किया गया है के रूप में अद्यतन हो जाता है। मैं उन परिस्थितियों के बारे में सोच सकता हूं जहां वास्तव में एक बुरी चीज हो सकती है। हो सकता है कि आप केवल मॉडल मान चाहते हैं, उपयोगकर्ता ने इनपुट से कुछ अन्य चीज़ों पर ध्यान केंद्रित किया है, जैसे कि जब इसे पूरा होने पर इनपुट को सत्यापित करने की आवश्यकता होती है। मैं जावास्क्रिप्ट के ब्लर फ़ंक्शन का उपयोग कर एक हैंडलर सेट अप करने के लिए उपयोग कर सकता हूं ताकि यह निर्धारित किया जा सके कि फोकस कब खो गया है, लेकिन ऐसा लगता है कि कोणीय का मतलब है। क्या इनपुट खोने के बाद मॉडल को अपडेट करने का एंगुलरजेएस तरीका है?अद्यतन कर रहा है मॉडल इनपुट नियंत्रण

उत्तर

15

आप इस के लिए ngModelOptions निर्देश उपयोग कर सकते हैं। ngModelOptions के साथ आप आगे बढ़ सकते हैं कि ngModel निर्देश कैसे काम करता है। लक्ष्य को हासिल करने के लिए आप क्या पूछा, आप इसका उपयोग इस प्रकार हो सकता है:

<input class="form-control" ng-model="actionText" 
    ng-model-options="{ updateOn: 'blur'}"/> 

आप अधिक जानकारी और कोणीय दस्तावेज में एक काम उदाहरण मिल सकते हैं: https://docs.angularjs.org/api/ng/directive/ngModelOptions

+0

क्या यह पूर्व 1.3 शाखाओं में काम करता है? – lucuma

+0

क्या यह सत्यापन को संभालने का अनुशंसित तरीका होगा? दूसरे शब्दों में, फोकस खोने के बाद, आप कुछ पैटर्न (पता, फोन नंबर इत्यादि) के लिए इनपुट को प्रमाणित करना चाहते हैं। – AndroidDev

+0

@ ल्यूकुमा मुझे वास्तव में पता नहीं है कि यह पुरानी शाखाओं में काम करता है या नहीं। – Nikolas

2

मुझे लगता है कि आप जो कुछ करना चाहते हैं उसे बंद करने के लिए सबसे आसान तरीका ng-blur का उपयोग कर सकते हैं।

http://plnkr.co/edit/rhcliQRzUOBKQ3xKFrde?p=preview

app.controller('MainCtrl', function($scope) { 

    $scope.myDataBlurred = $scope.myData; 

    $scope.blurred = function() { 
    $scope.myDataBlurred = $scope.myData; 
    } 
}); 

<input ng-model='myData' ng-blur='blurred()' /> 

    <div> 
     This will update as you type: {{myData}} 
    </div> 
    <div> 
     This will update after you blur: {{myDataBlurred}} 
    </div> 
+0

मैं एनजी मॉडल-विकल्प की तरह कर पोस्ट के रूप में @ निकोलस द्वारा। आपके उपयोग के मामले और कोणीय के संस्करण पर निर्भर करता है। – lucuma

संबंधित मुद्दे