2010-09-09 85 views
8

我已經看到了一些其他的問題,但沒有用於Prototype。當使用Prototype按下輸入鍵時提交表單javascript

我有一個沒有提交按鈕的表單(使用調用某個javascript的樣式化鏈接)。

在所有輸入字段中檢測輸入按鍵並提交表單的最佳方法是什麼?

謝謝!

+0

我不能提供任何原型特定的建議,但你有沒有考慮添加一個提交按鈕,然後隱藏它與原型/ JS?這不是你想要的答案,但它會很好地降解。 – 2010-09-09 09:51:27

回答

9

這是什麼樣的事情的一個例子,你可以使用:

$('input').observe('keypress', keypressHandler); 

function keypressHandler (event){ 
    var key = event.which || event.keyCode; 
    switch (key) { 
     default: 
     break; 
     case Event.KEY_RETURN: 
      $('yourform').submit(); 
     break; 
    } 
} 
3

這是與上面相同,但並不需要設置一個功能:

$('input').observe('keypress', function(event){ 
    if (event.keyCode == Event.KEY_RETURN || event.which == Event.KEY_RETURN) { 
     // enter here your code 
     Event.stop(event); 
    } 
}); 
0

隨着原型:

document.observe("dom:loaded", function() { 
    $$('form').each(function(f) { 
     $(f).select("input").each(function(e) { 
      e.observe('keypress', function(event) { 
       if (event.keyCode == Event.KEY_RETURN || event.which == Event.KEY_RETURN) { 
        this.form.submit(); 
       } 
      }); 
     }); 
    }); 
}); 
相關問題