2013-07-16 11 views
8

Ich habe die folgenden, die funktioniert:Wie auslösen Ereignis mit jquery eingeben

$('textarea').keypress(function(e) { 
    if (e.keyCode == '13') { 
     alert('code'); 
    } 
}); 

Aber ich möchte, dass die gleiche Sache triggern, wenn die Seite geladen wird, habe ich versucht, die folgenden, aber es funktioniert nicht:

var e = jQuery.Event("keypress"); 
e.which = 13; // Enter 
$('textarea').trigger(e); 

HINWEIS: Ich möchte die erste Code-Code dort haben, möchte ich nicht entfernen.

+0

Sie sollten 'e.which' in Ihrem Handler statt' e.keyCode' werden überprüft. – jbabey

+0

jbabey du scheinst recht zu haben. Kannst du als Antwort posten, damit ich das annehmen kann? – dzumla011

Antwort

11

Use "die" statt keyCode. "Welche" Arbeiten in beiden Szenarios

$('textarea').keypress(function (e) { 
    if (e.which == '13') { 
     alert('code'); 
    } 
}); 
+2

(e.keyCode || e.which) === 13 – karaxuna

+0

@karaxuna Der Code wurde geändert. –

+0

+1 Ich denke, deine Antwort ist, was er braucht :) – karaxuna

0

Alternative Lösung:

var textarea = $('textarea').keypress(OnTextareaKeypress); 
$(function(){ 
    OnTextareaKeypress.call(textarea[0], { e: { which: 13 } }); 
}); 

function OnTextareaKeypress(e) { 
    if (e.which == '13') { 
     alert('code'); 
    } 
} 
6

Hier ist eine Lösung für Ihr Problem ist http://jsfiddle.net/dima_k/zPv2a/

$('button').click(function(){ 
    debugger 
    var e = $.Event("keypress"); 
    e.keyCode = 13; // # Some key code value 
    $('#textbox').trigger(e); 
}); 

$('#textbox').keypress(function(e) 
{ 
    if (e.keyCode == '13') { 
     alert('code'); 
    } 
}); 
+1

ist das nicht ein Kopieren/Einfügen der Antwort hier? http://stackoverflow.com/questions/832059/definitive-way-to-trigger-keypress-events-with-jquery – Omar

+2

Werfen Sie einen Blick auf eine Frage. Ich glaube, er hat bereits die Lösung gefunden, die Sie angebracht haben, aber es hat nicht für ihn funktioniert. Also habe ich ein jsFiddle mit einer funktionierenden Lösung verbunden, um zu zeigen, dass es funktioniert. –

Verwandte Themen