2011-02-06 2 views
0

私はいくつかのAjax.InPlaceEditorフィールドを持つページを持っています。いくつかは一行(テキスト入力ボックス)で、いくつかは複数行(テキストエリア)です。Returnキーを押して送信するAjax.InPlaceEditorを停止する方法はありますか?

ユーザーが何かを1行のボックスに入力してEnterキーを押すと、フォームが送信されます。私はこれが起こることを望んでいない。私はすべての可能であればsumitOnBlur: trueを維持したいと思います

new Ajax.InPlaceEditor(
    'headline', 
    '../scripts/save.php', 
    { 
     submitOnBlur:true, 
     rows:1, 
     okControl:false, 
     cancelControl:false, 
     highlightColor:'transparent', 
     highlightEndColor:'transparent', 
     savingText: 'Saving...' 
    } 
); 

:ここ

は私Ajax.InplaceEditorコードのサンプルです。

+0

jQueryとPrototypejsを一緒に使用していますか? $とは何ですか? jQueryまたはプロトタイプのgetByIDメソッド? – BGerrissen

+0

はい私は両方を使用しています。また、物事をより複雑にするFancybox。 IIRC $はFancyboxにバインドされています。 –

答えて

1

フォームはキープレスイベントによって送信されています。フォームを送信しないフィールドには表示しないようにしてください。

$('form#form_id input').keypress(function (e) { 
    // Prevent form from submitting on enter key press 
    if (e.keyCode == 13) { // ENTER 
    e.preventDefault(); 
    } 
}); 
関連する問題