2012-06-19 2 views
1

У меня есть форма, как это:Open кнопка на клавиатуре немедленно отправляет форму

<form action="form_send.php" method="post"> 
<table> 
     <tr> 
      <td><label for="address">address</label></td> 
      <td><input type="text" id="address" name="address" tabindex="1" /></td> 
     </tr> 
     <tr> 
      <td><label for="country">country</label></td> 
      <td><input type="text" id="country" name="country" tabindex="2" /></td> 
     </tr> 
     <tr> 
</table> 
<input type="submit" value="Submit" tabindex="3" /> 
</form> 

Если пользователь открывает Safari или другой браузер на его/ее смартфон и заполняет текстовые поля, он имеет возможность нажать на Open. Если эта кнопка нажата, форма немедленно отправляется.

Есть ли вероятность, что пользователь сначала перейдет ко второму текстовому полю, прежде чем он сможет отправить форму?

Я попытался использовать tabindex, но это мне не помогло. Я знаю, что я могу сделать поля обязательными для PHP/Javascript, но поля не должны быть обязательными.

ответ

3

Это может быть нажатие для пользователя. Вы можете предотвратить это, перехватывая нажатия клавиш.

Этот бит кода (jQuery) предотвратит отправку форм, нажав ENTER.

$('form').keypress(function(e){ 
    if(e.keyCode === 13){ 
     e.preventDefault(); 
    } 
}); 
+0

Кажется, что нужно работать (после включения библиотеки jquery два раза). Есть ли способ разместить элемент управления на следующем 'tabindex' при нажатии ENTER или открыть? – testing

Смежные вопросы