Войдите, нажав клавишу ввода в asp.net Контроль входа - PullRequest
1 голос
/ 12 мая 2011

Я должен прочитать сто форумов и постов об этом, все они говорят о размещении панели и установке кнопки «По умолчанию» на кнопку «Вход» или установке кнопки «По умолчанию» в форме.Я пробовал все это и многое другое, но ничего не работает.

У меня есть два LinkButtons в моем элементе управления Login, который преобразуется в шаблон.Первая - кнопка «Вход», вторая - ссылка на страницу регистрации.Когда я нажимаю ввод, кнопка Link Link запускается и перенаправляет на страницу регистрации.

Я пытался установить кнопку по умолчанию на панелях, расположить их повсюду и установить кнопку по умолчанию в самом теге формы.Я попытался удалить кнопку «Регистрация» и установить щелчок на и вызвать функцию, перенаправленную на страницу регистрации.Это даже не сработало, и клавиша ввода по-прежнему перенаправлялась на страницу регистрации.

Они помещаются в шаблон LayoutTemplate следующим образом:

<div class="btn-login">
                                        <asp:LinkButton ID="LoginButton" runat="server" CommandName="Login" ValidationGroup="LoginUserValidationGroup"
                                            Height="38px" Width="120px">
                                        </asp:LinkButton>
                                    </div>
                                    <div class="btn-opretbruger">
                                        <asp:LinkButton ID="Register" runat="server" ValidationGroup="LoginUserValidationGroup"
                                            Height="38px" Width="120px" PostBackUrl="/Account/registrerbruger.aspx">
                                        </asp:LinkButton>

                                    </div>

Все статьи, которые я прочитал, использовали кнопку.управления, и я использую LinkButton.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 09 декабря 2013

Включите в код загрузки страницы следующий код. Он автоматически установит фокус на кнопке.

//Set the default button for the Login page
this.Page.Form.DefaultButton = btnLogin.UniqueID;
0 голосов
/ 12 мая 2011

Задание 1)

Добавьте скрипт на свою страницу, чтобы отключить клавишу ввода ...

function stopRKey(evt) {

    var evt = (evt) ? evt : ((event) ? event : null);
    var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);    
    if ((evt.keyCode == 13) && (node.type == "text")) { return false; }
}

Задание 2)

Добавьте некоторый скрипт, который позволит вам нацелить элемент html и вызвать для него обработчик событий

function submitByTarget(event, target) {

    if (event.keyCode == 13) {

        jQuery('#' + target.id).click();

    }

}

Задание 3)

Добавьте обработчик событий для вашего txtbox логина, который ожидает нажатия клавиши ввода и вызывает правильный обработчик .click для целевой кнопки ... в этом случае 'login'

txtLogin.Attributes.Add("onkeypress", "return submitByTarget(event," + btnSearch.ClientID + ");");
...