[JS] preventDefault() om enter key uit te schakelen.

Pagina: 1
Acties:

  • cyberstalker
  • Registratie: September 2005
  • Niet online

cyberstalker

Eersteklas beunhaas

Topicstarter
Ik heb een probleem bij het gebruik van preventDefault() voor de enter toets.

Ik heb de volgende code:

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// knip
                area.addEventListener('keyup', update_paragraph, true);
// knip

function update_paragraph(event)
{
        var link                        =       event.target;
        var key                         =       event.keyCode;
        var paragraph                   =       link.nextSibling;
        var height;

        if (key == 13)
        {
                event.preventDefault();
                alert('Enter key should have been canceled!');
        }
        else
        {
                paragraph.firstChild.nodeValue  =       link.value;
                height                          =       paragraph.clientHeight;

                link.setAttribute('style', 'height: '+height+'px');
        }
}


Ik krijg wel de alert dat de enter toets nu zou moeten zijn geannuleerd, maar ik krijg nog steeds een enter in de tekst te zien. Als ik kijk op http://www.w3.org/TR/2001...ents-20010823/events.html zie ik bij het keyup event "Cancelable: Yes" staan.

Wat doe ik hier verkeerd?

Ik ontken het bestaan van IE.


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 00:18

Gonadan

Admin Beeld & Geluid, Harde Waren
Je cancelt het keyup event, maar de enter wordt toch al gegenereerd tijdens het keydown event? :)

Wordt de parameter 'event' überhaupt wel gevuld trouwens? Controleer dat ook even. :)

[ Voor 31% gewijzigd door Gonadan op 26-06-2007 15:52 ]

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


  • cyberstalker
  • Registratie: September 2005
  • Niet online

cyberstalker

Eersteklas beunhaas

Topicstarter
Gonadan schreef op dinsdag 26 juni 2007 @ 15:45:
Je cancelt het keyup event, maar de enter wordt toch al gegenereerd tijdens het keydown event? :)
Dat was ook mijn eerste gedachte, maar toen ik even zocht zag ik dus dat het keyup event Cancelable is. Als de tekst op dat moment al geplaatst is en er dus niets te annuleren is zou er toch 'Cancelable: No' staan?

Of begrijp ik het nu gewoon verkeerd?

Ik ontken het bestaan van IE.


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 00:18

Gonadan

Admin Beeld & Geluid, Harde Waren
cyberstalker schreef op dinsdag 26 juni 2007 @ 15:47:
Dat was ook mijn eerste gedachte, maar toen ik even zocht zag ik dus dat het keyup event Cancelable is. Als de tekst op dat moment al geplaatst is en er dus niets te annuleren is zou er toch 'Cancelable: No' staan?

Of begrijp ik het nu gewoon verkeerd?
Hangt er van af, sommige dingen worden bij up getriggered anderen bij down.
Als ik typ zie ik dat het bij down getriggerd wordt, als ik op een button klik wordt die pas bij up getriggered. Even debuggen zou ik zeggen, lees mijn edit in mijn vorige bericht ook nog even trouwens. ;)

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


  • cyberstalker
  • Registratie: September 2005
  • Niet online

cyberstalker

Eersteklas beunhaas

Topicstarter
De event parameter wordt netjes gevuld (ik krijg zoals gezegd wel netjes de alert en de rest van de code werkt ook prima).

Ik ontken het bestaan van IE.


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 00:18

Gonadan

Admin Beeld & Geluid, Harde Waren
cyberstalker schreef op dinsdag 26 juni 2007 @ 15:55:
De event parameter wordt netjes gevuld (ik krijg zoals gezegd wel netjes de alert en de rest van de code werkt ook prima).
En wat doet hij als je de keydown cancelt?
Misschien ligt het daar niet aan hoor, maar ik zou het wel even proberen. :)

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


  • frickY
  • Registratie: Juli 2001
  • Laatst online: 01-12 13:11
Mocht je de keydown niet kunnen cancellen, dan kun je meen ik ook een return false geven om het plaatsen van de enter te voorkomen.
Pagina: 1