Отправка формы по нажатию на ENTER
Сабж:
Делаю отправку некой формы через аякс. и у меня стоит кнопка которая запускает скрипт... но хотелось бы для упрощения седлать еще и отправку формы с помощью нажатия на ентер как это реализировать скрипт. <FORM onSubmit=searchtov()> <INPUT TYPE="text" NAME="search" id="search" size="50"> <INPUT TYPE="button" name="search_now" id="search_now" value="Искать" onClick=searchtov()> </FORM> через кнопку работает а вот субмит не хочет выдавать инфу... =( может как то перехватить нажатие на ентер? |
function searchtov(){ ... return false; } |
Можно перехватить событие нажатия энтера, для этого вешайте событие нажатие клавиши и через объект event смотрите какая клавиша нажата.
Примерчик: document.onkeyup = function (e) { e = e || window.event; if (e.keyCode === 13) { alert("Вы нажали Enter!"); } // Отменяем действие браузера return false; } |
Цитата:
Цитата:
|
Кул спасибо... получается я так понял можно подставить так и поидее скрипт будет реагировать и выполнять функцию?
document.onkeyup = function (e) { e = e || window.event; if (e.keyCode === 13) { searchtov(); } // Отменяем действие браузера return false; } да попробовал работает... ОГРОМНОЕ СПАСИБО |
Обработчик надо вешать на событие submit формы, а не click у кнопки, тогда и enter сам заработает.
|
<script> function submit_handler(form) { alert(form.anything.value); return false; } </script> <form method="POST" action="" onsubmit="return submit_handler(this)"> <input name="anything" value="text"> <input type="submit"> </form> По нажатию энтера отлично отрабатывает. Если не работает - у вас в ф-ции ошибка. И на кнопке ничего не висит, кстати. |
trikadin, не нужно учить новичков гадить в html-код, иначе они никогда не перестанут быть новичками.
|
monolithed, вы правы)
Vuzy, лучше так: <form method="POST" action="" id="form_who_should_be_checked"> <input name="anything" value="text"> <input type="submit"> </form> <script> document.getElementById("form_who_should_be_checked").onsubmit= function() { alert(this.anything.value); return false; } </script> |
Имеется вот такой код
<? { echo "<div class='mess'>Соощение для "; echo "<b> $ank[nick] </b></div></br>"; echo "<form method='post' name='message' action='/mail.php?id=$ank[id]&$passgen'>\n"; echo "<table width='100%'>\n"; echo "<tr>\n"; echo "</tr>\n"; echo "<tr>\n"; echo "<td width='100%'>\n"; if (!isset($msg2))$msg2=NULL; echo '<textarea name="msg" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);">'.$msg2.'</textarea><br />'; echo "</td>\n"; echo "</tr>\n"; echo "</table>\n"; if ($user['level']==0 && mysql_result(mysql_query("SELECT COUNT(*) FROM `users_konts` WHERE `id_kont` = '$user[id]' AND `id_user` = '$ank[id]'"), 0)==0) echo "<img src='/captcha.php?SESS=$sess' width='100' height='30' alt='Проверочное число' /><br />\n<input name='chislo' size='5' maxlength='5' value='' type='text' /><br/>\n"; echo "<input type='submit' name='send' value='Отправить' />\n"; echo "</form>"; } ?> как сделать, чтоб отправлялось по нажатию на Enter ??? |
Часовой пояс GMT +3, время: 19:27. |