Подтвердить что ты не робот

Как установить кнопку по умолчанию на странице контента с помощью asp.net?

Мне нужно установить кнопку по умолчанию для страницы содержимого. Мой код выглядит следующим образом:

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent" 
defaultbutton="BtnSearch" defaultfocus="TxtSearchValue">

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

Как справиться с этим типом проблемы?

4b9b3361

Ответ 1

1) Вам просто нужно сделать:

this.Form.DefaultButton = this.btnId.UniqueID;

ИЛИ

2) Используя Javascript:

function clickButton(e, buttonid)
{

  var evt = e ? e : window.event;

  var bt = document.getElementById(buttonid);

  if (bt)
  {
      if (evt.keyCode == 13)
      {
            bt.click();
            return false;
      }
  }
}

И из кода позади:

ContentPage.Attributes.Add("onkeypress", "javascript:return 
clickButton(event,'" + btnSearch.ClientID + "');");

Ответ 2

Я решил аналогичную проблему со следующим кодом.

спасибо: http://www.w3schools.com/aspnet/prop_webcontrol_panel_defaultbutton.asp

<form runat="server">
    <asp:Panel runat="server" DefaultButton="bt1">

        <asp:TextBox runat="server" />
        <asp:Button id="bt1" Text="Default" runat="server" />

    </asp:Panel>
</form>

Ответ 3

Оберните все элементы управления и кнопки asp.net внутри панели и установите свойство кнопки по умолчанию панели с идентификатором кнопки.

Ответ 4

this.Page.Form.DefaultButton = btnSave.ID;

Ответ 5

Попробуйте этот код

protected void Page_Load(object sender, EventArgs e)
    {
        this.form1.DefaultFocus = txtSearch.ClientID;
        this.Form.DefaultButton = btnSearch.UniqueID;
    }