Клавиша Enter, инициировавшая нажатие кнопки - но я не хочу это к

Имейте реальный главный скребок здесь: у Меня есть страница с несколькими средствами управления на нем и ASP:Button или два. Когда я нахожусь в управлении и поражаю клавишу Enter, это действует как, я нажал кнопку отправки, которую я на самом деле не хочу делать в данный момент.

Кнопка не находится в ASP:Panel с набором DefaultButton, она не имеет никакого атрибута OnClientClick, я не вижу JavaScript, который наблюдает за клавишей Enter... Почему это стреляет?

Если я создаю стандарт.ASPX страница и помещаю текстовое поле и кнопку на нем, выполняю его и поражаю клавишу Enter, кнопка проигнорирована, например, событие щелчка не стреляет. Это - поведение, которое я ожидаю, но не добираюсь.

Короче говоря, что еще могло заставить кнопку думать, что это - кнопка по умолчанию для страницы?

Спасибо,

Mike K.


Хорошо, вот моя тестовая разметка страницы:

<p><asp:Label ID="uxNameL" runat="server" AssociatedControlID="uxName">Name</asp:Label><asp:TextBox ID="uxName" runat="server"></asp:TextBox></p>
<p><asp:Button id="uxSubmit" runat="server" Text="Submit" onclick="uxSubmit_Click" /></p>
<asp:Literal ID="uxOut" runat="server" EnableViewState="false"></asp:Literal>

Вот то, что происходит в коде:

    protected void uxSubmit_Click(object sender, EventArgs e)
    {
        uxOut.Text = uxName.Text;
    }

То, когда я выполняю страницу, и ввожу некоторый текст в текстовом поле и нажимаю Enter - ха, было бы Вы смотреть на это: В IE 8 проигнорировано событие кнопки, например, страница просто перезагружает, но в FF, это отправляет форму...

Hmmmmm.

5
задан Bill the Lizard 28 July 2013 в 13:19
поделиться

4 ответа

Я верю (и могу быть исправлен), но если у вас есть форма, с кнопкой ввода типа submit, то когда вы нажмете enter, она выстрелит этой кнопкой.

8
ответ дан 18 December 2019 в 05:40
поделиться
- [11432533-

Если вы не хотите, чтобы клавиша Enter Trigger, возможно, вы можете добавить этот код JS на свою страницу:

if (window.event.keyCode == 13)
{
    event.returnValue=false;
    event.cancel = true;
}

Вам необходимо позвонить в эту функцию с обработчиком OnekeyDown на Метка вашей страницы.

4
ответ дан 18 December 2019 в 05:40
поделиться

Так работает HTML, если

содержит , нажатие клавиши enter отправит форму. Решение: Как предотвратить нажатие клавиши ENTER для отправки веб-формы? или здесь: http://www.cs.tut.fi/~jkorpela/forms/enter.html

3
ответ дан 18 December 2019 в 05:40
поделиться

Я на самом деле уже пытался поиграть с ним в Firebug, и кажется, что это стандартное поведение браузера, т.е. он не имеет ничего общего с javascript или ASP. Если у вас есть кнопка submit и текстовое поле, то оно просто отправляется при вводе. Чтобы избежать этого, измените тип ввода на кнопку.

1
ответ дан 18 December 2019 в 05:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: