2015-02-04 2 views
0

У меня есть тег input в пределах form, когда я нажимаю Enter в поле ввода. url будет добавлен с вопросительным знаком.URL будет добавлен с вопросительным знаком, когда пользователь нажимает Enter

код:

<form> 
    <input id="xyz" type="text" value="">          
</form> 

Это очень раздражает, поэтому я добавить код, чтобы запретить пользователю делать это поведение. Я меняю тег тела на:

<body onkeydown="(event.keyCode==13) ? 0 : 1"> 

Ну, это работает на другой веб-странице, но не в этом случае.

Что я пропустил?

И это хорошее решение, позволяющее пользователю нажимать клавишу ввода на клавиатуре?

Просьба дать некоторое объяснение в вашем ответе, спасибо.

p.s. Я не могу использовать jQuery.

UPDATE: Я не хочу, чтобы пользователь вводил нажатие на клавиатуре, чтобы отправить форму, даже я определяю действие и метод формы.

ответ

0

Действие по умолчанию, когда вы нажимаете enter, когда на входе подается форма. Поскольку у вас нет каких-либо действий, определенных для формы, это ничего не делает. У вас также нет определенного метода, поэтому я считаю, что он по умолчанию использует GET, который использует параметры в URL-адресе (например, example.com?param1=abc & param2 = 123).

Если вы меняете <form> на номер <form method="post">, это должно помешать появлению вопросительного знака. Хотя он по-прежнему недействителен HTML, потому что у вас нет действия или имени для вашей формы.

Могу я спросить , почему вы не хотите, чтобы они отправляли форму, когда они нажимают кнопку ввода?

+0

Ну, на самом деле пользователь не передает что-то серверу, когда он нажимает кнопку ввода в этом случае. Я хочу удалить тег 'form', но мой коллега не согласен с ним ... На других страницах дизайн по умолчанию желает, чтобы пользователь не нажимал клавишу ввода для отправки формы. (Желание моего руководителя) – Stallman

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