Клав. комбинация с Javascript която да натиска бутона Submit

bazooka21

Registered
Здравейте,
имам страничка, до която имат достъп и слепи хора (използващи синтезиран глас на български).
Имам и текстово поле където потребителят въвежда информация и бутон Submit чрез който я предава на базата данни за запис.
Та молбата ми е, бихте ли помогнали със създаване на скрипт, който да активира Submita чрез клавишна комбинация, например Alt+S или нещо от сорта?
Аз се опитах, но не се получи, не знам по каква причина.
Вижте по долу моя код:
Javascript кода:
Код:
<script type="text/javascript" >
window.onload =document.onkeyup = function(e) {
  if (e.altKey && e.which == 83) {
document.forms['add_link'].submit();    
  }
};
</script>

Html form:
Код:
<form name="add_link" action="save.php" method="post" enctype="multipart/form-data"> 

 Линк: <input type="text" name="link" autofocus="autofocus" size="80"/>
Описание:<textarea name="description" rows="5" cols="100"></textarea>
<input type="submit" name="save_link" value="Запис" />
</form>
Надявам се да има решение?
Благодаря предварително!
 
Здравей,

не съм много запозната, но по принцип навигирането в полетата на една форма става, със "Tab". Може по този начин да се стигне и до събмит бутона, който да бъде активиран с "Enter". Предполагам софтуера, който се използва чете имената на бутоните/полета. Ако името на бутона е достатъчно обясняващо, че с него се изпраща форма, би трябвало вграденото поведение да е достатъчно.

Доколкото за твоя код, комбинацията от ALT + S е 223:

Код:
document.onkeypress = function (e) {
    e = e || window.event;
    if(e.which === 223){
    	alert('Submit form!');
    }
};
 
Странно.. при мене твоя код работи.. Дава ли ти някаква грешка? Какъв браузър ползваш?

Също е хубаво да сложиш едно e.preventDefault() във функцията, за да избегнеш някакво друго действие от страна на браузъра ако има такава клавишна комбинация.
 
deam0n каза:
Странно.. при мене твоя код работи.. Дава ли ти някаква грешка? Какъв браузър ползваш?

Също е хубаво да сложиш едно e.preventDefault() във функцията, за да избегнеш някакво друго действие от страна на браузъра ако има такава клавишна комбинация.

Предполагам, че страницата му зарежда малко по-бавно и формата не е видима за js-a, когато тества.

Виж как е декларирал onload event-a.
 

Горе