निम्न कुंजी महान काम करती है जब एंटर कुंजी जारी की जाती है। इसके अलावा और कौन से विकल्प उपलब्ध हैं ?keyup
keyup.enter
<input #inputstring (keyup.enter)="doSomething(inputstring.value)"/>
निम्न कुंजी महान काम करती है जब एंटर कुंजी जारी की जाती है। इसके अलावा और कौन से विकल्प उपलब्ध हैं ?keyup
keyup.enter
<input #inputstring (keyup.enter)="doSomething(inputstring.value)"/>
जवाबों:
मैं कई प्रमुख घटनाओं - विशेष रूप से, Shift + Enter - के लिए बाध्य करने के लिए एक रास्ता खोज रहा था, लेकिन ऑनलाइन कोई भी अच्छा संसाधन नहीं खोज सका। लेकिन कीडिंग बाइंडिंग लॉग करने के बाद
<textarea (keydown)=onKeydownEvent($event)></textarea>
मुझे पता चला कि कीबोर्ड इवेंट ने मुझे Shift + Enter का पता लगाने के लिए आवश्यक सभी जानकारी प्रदान की। पता चला है कि $event
एक काफी विस्तृत KeyboardEvent लौटाता है ।
onKeydownEvent(event: KeyboardEvent): void {
if (event.keyCode === 13 && event.shiftKey) {
// On 'Shift+Enter' do this...
}
}
वहाँ भी CtrlKey, AltKey, और MetaKey (यानी मैक पर कमांड कुंजी) के लिए झंडे।
KeyEventsPlugin, JQuery, या शुद्ध JS बाइंडिंग की कोई आवश्यकता नहीं है।
यह फ़ाइल आपको कुछ और संकेत देती है, उदाहरण के लिए, keydown.up काम नहीं करता है जिसे आपको keydown.arrowup की आवश्यकता है:
आज उसी समस्या पर प्रहार किया है।
ये खराब दस्तावेज हैं, एक खुला मुद्दा मौजूद है।
के लिए कुछ KeyUp , अंतरिक्ष की तरह:
<input (keyup.space)="doSomething()">
<input (keyup.spacebar)="doSomething()">
के लिए कुछ keydown
(KeyUp के लिए भी काम कर सकते हैं):
<input (keydown.enter)="...">
<input (keydown.a)="...">
<input (keydown.esc)="...">
<input (keydown.alt)="...">
<input (keydown.shift.esc)="...">
<input (keydown.shift.arrowdown)="...">
<input (keydown.f4)="...">
उपरोक्त सभी नीचे दिए गए लिंक से हैं:
https://github.com/angular/angular/issues/18870
https://github.com/angular/angular/issues/8273
https://github.com/angular/angular/blob/master/packages/platform- ब्राउज़र / src / dom / घटनाओं / key_events.ts
https://alligator.io/angular/binding-keyup-keydown-events/
आप इस तरह कीअप घटना जोड़ सकते हैं
template: `
<input (keyup)="onKey($event)">
<p>{{values}}</p>
`
घटक में, नीचे कुछ कोड की तरह
export class KeyUpComponent_v1 {
values = '';
onKey(event:any) { // without type info
this.values += event.target.value + ' | ';
}
}
अपने KeyUp घटना के बाहर का है CTRL, SHIFT, ENTERऔर ESCब्रैकेट, बस @Md अयूब अली Sarker की मार्गदर्शिका का उपयोग करें। केवल कीप छद्म-घटना का उल्लेख यहाँ कोणीय डॉक्स https://angular.io/docs/ts/latest/guide/user-input.html में किया गया है ENTER। नंबर की और अल्फाबेट के लिए कोई की-सी छद्म घटनाएँ नहीं हैं।
keyCode
आप उपयोग कर सकते हैं हटा दिया गया है key
में संपत्तिKeyboardEvent
<textarea (keydown)=onKeydownEvent($event)></textarea>
टाइपप्रति:
onKeydownEvent($event: KeyboardEvent){
// you can use the following for checkig enter key pressed or not
if ($event.key === 'Enter') {
console.log($event.key); // Enter
}
if ($event.key === 'Enter' && event.shiftKey) {
//This is 'Shift+Enter'
}
}
घटनाओं के साथ एक की तरह
(keydown)="$event.keyCode != 32 ? $event:$event.preventDefault()"