Как с клавиш да имитирам кликване върху екшън форма+събмит

sdpnin

Registered
Отскоро разучавам PHP и др. Програмирал съм на ПАСКАЛ и пренаписвам програми от MS_DOS към WEB. Потребителите ми са свикнали с клавишни комбинации. Как мога вместо с мишката да кликват върху екшън форма със събмит бутон да могат стартират такъв код натискайки 'F10' от клавиатурата например. Нямам опит и терминология, за което се извинявам. Благодаря предварително!
 
Това най-лесно може да стане с малко javascipt или по точно с jQuery препоръчвам ти да хвърлиш едно око http://api.jquery.com/category/events/keyboard-events/
 
Нещата са ми доста мъгливи. Което съм намерил е като се попълва едно текстово поле да се извежда номера на натиснатия клавиш. Така например ако се натисне F10, той има номер 121. Искам вместо да се визуализира тази стойност, то ако event.which==121 да се зареди друга страница или да стартирам някоя моя функция /например за запис на данни в електронна таблица/ ето кода който мисля, че ще ми е полезен:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("input").keydown(function(event){
$("div").html("tova e" + event.which);
});
});
</script>
</head>
<body>

PISHI TUKA: <input type="text">

<p>Tova e butona.</p>
<div />

</body>
</html>
 
В най-долния пример ще видиш какво връща функцията keydown
http://api.jquery.com/keydown/
Ето един прост пример конкретно за твоя случай
Код:
<?php
  if(isset($_POST)&&count($_POST)>0){
    echo '<pre>'.print_r($_POST,true).'</pre>';
    exit;
  }
?>
<!DOCTYPE HTML>
<html>
<head>
  <meta charset="utf-8" />
  <title>test submit form by key press F10</title>
  <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
  <script>
    $(function(){
      $(document).keydown(function(e){
        e.preventDefault();
        console.log(e.type); // тест
        console.log(e.key); // тест
        if(e.key=='F10')$('#login').submit();
      });
    });
  </script>
</head>
<body>
  <form id="login" method="post">
    <input type="text" name="user" />
    <input type="text" name="pass" />
    <input type="submit" />
  </form>
</body>
</html>
 
Благодаря за помощта на d_badboy. Подадения от тебе код не ми тръгна на 100%. На ред 19 замених 'F10' с 121, не не сработи. Доколкото схващам, ми предлагаш да задействам потвърждение /submit/ на формата, чрез нейното id. Аз реализирах натискане /click/ на бутона чрез неговото id. Прилагам кода който ми сработи. Още веднъж благодаря!

<?php
if(isset($_POST)&&count($_POST)>0){
echo '<pre>'.print_r($_POST,true).'</pre>';
exit;
}
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<title>test submit form by key press F10</title>
<script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
<script>
$(document).ready(function(){
$("body").keydown(function(sdp_e){
if (sdp_e.keyCode==121) {$('#test_F10').click();}
});
});


</script>
</head>
<body>
<form id="login" method="post">
<input type="text" name="user" />
<input type="text" name="pass" />
<input type="submit" id="test_F10" value="OK=F10"/>
</form>
</body>
</html>
 

Back
Горе