2011-12-05 13 views
1

私が望むように、ユーザが自分のサイトにコメントを入力(提出)すると、それが送信されます。ユーザーが新しい行を作成したい場合は、ユーザーはshift + enterを押して新しい行を作成し、提出しないでくださいjQuery keypress submit on only

どのように作成されますか? これは私のコードです:場合13 + 16:

$('#commentfield').keyup(function(e){ 
    switch (e.keyCode) { 
    case 13: //enter 
$('#commentform').submit(); 
    break;   
    } 
}); 

私だけで新しいケースを作る必要があります?

+0

いずれかの回答がお手伝いしますか?両方ともあなたが使用できる機能コードを提供します –

答えて

6

このフィドルを探すhttp://jsfiddle.net/jishnuap/zYEMv/これは彼かもしれないあなた。

+0

@Flaashingこれがあなたが必要とするものなら、これを試してみてください。 –

+0

ありがとうございますそれは私が必要としている正確に何ですか: しかし、getCaret関数は何を教えてくれますか? – Flaashing

1

...または単純な解決策

http://jsfiddle.net/CoryDanielson/McH8q/

のjQuery/Javascriptを(jQueryの1.7.1)

$('textarea').on('keydown', function(event) { 
    if (event.keyCode == 13) //if enter is pressed 
     if (!event.shiftKey) $('#testForm').submit(); //and shift IS NOT held down, submit form 
}); 

HTML

<form id="testForm"> 
    <textarea placeholder="Try Shift + Enter"></textarea> 
</form>