जवाबों:
का प्रयोग करें (eventName)
, जबकि डोम को घटना बाइंडिंग के लिए, मूल रूप से ()
घटना बाइंडिंग के लिए प्रयोग किया जाता है। इसके अलावा चर के ngModel
लिए दो तरह से बाध्यकारी पाने के लिए उपयोग करें myModel
।
मार्कअप
<input type="text" [(ngModel)]="myModel" (blur)="onBlurMethod()">
कोड
export class AppComponent {
myModel: any;
constructor(){
this.myModel = '123';
}
onBlurMethod(){
alert(this.myModel)
}
}
वैकल्पिक (बेहतर नहीं)
<input type="text" #input (blur)="onBlurMethod($event.target.value)">
आग पर सत्यापन के लिए मॉडल संचालित फॉर्म के लिए blur
, आप updateOn
पैरामीटर पारित कर सकते हैं ।
ctrl = new FormControl('', {
updateOn: 'blur', //default will be change
validators: [Validators.required]
});
तुम भी (ध्यान केंद्रित) घटना का उपयोग कर सकते हैं :
का प्रयोग करें (eventName)
, जबकि डोम को घटना बाइंडिंग के लिए, मूल रूप से ()
घटना बाइंडिंग के लिए प्रयोग किया जाता है। इसके अलावा आप ngModel
अपने लिए दो तरह से बाध्यकारी पाने के लिए उपयोग कर सकते हैं model
। ngModel
आप की मदद से model
अपने अंदर परिवर्तनशील मूल्य में हेरफेर कर सकते हैं component
।
इसे HTML फ़ाइल में करें
<input type="text" [(ngModel)]="model" (focusout)="someMethodWithFocusOutEvent($event)">
और आपके (घटक) .ts फ़ाइल में
export class AppComponent {
model: any;
constructor(){ }
someMethodWithFocusOutEvent(){
console.log('Your method called');
// Do something here
}
}
someMethodWithFocusOutEvent
, तो कार्यक्रम लूप में प्रवेश कर जाता है क्योंकि चेतावनी क्षेत्र को अपना ध्यान खो देती है, क्या इसे ठीक करने का कोई तरीका है?
एचटीएमएल
<input name="email" placeholder="Email" (blur)="$event.target.value=removeSpaces($event.target.value)" value="">
टीएस
removeSpaces(string) {
let splitStr = string.split(' ').join('');
return splitStr;
}
/*for reich text editor */
public options: Object = {
charCounterCount: true,
height: 300,
inlineMode: false,
toolbarFixed: false,
fontFamilySelection: true,
fontSizeSelection: true,
paragraphFormatSelection: true,
events: {
'froalaEditor.blur': (e, editor) => { this.handleContentChange(editor.html.get()); }}
यह गीथूब रेपो पर प्रस्तावित उत्तर है:
// example without validators
const c = new FormControl('', { updateOn: 'blur' });
// example with validators
const c= new FormControl('', {
validators: Validators.required,
updateOn: 'blur'
});
Github: करतब (प्रपत्र): FormControls में अपडेटऑन ब्लर विकल्प जोड़ें
(धब्बा) के बजाय (फ़ोकआउट) का उपयोग करने का प्रयास करें