Как запустить событие нажатия кнопки из JavaScript в ASP.NET - программирование

Как запустить событие нажатия кнопки из JavaScript в ASP.NET

Как мне запустить событие клика на стороне сервера из JavaScript?

Я пробовал вот так:

document.getElementById("<%= ButtonID.ClientID %>").click();

Но бесполезно. Как я могу это сделать?

4b9b3361

Ответ 1

Вы можете просто поместить эту строку в функцию JavaScript:

__doPostBack('btnSubmit','OnClick');

Или сделайте что-нибудь вроде этого:

$('#btnSubmit').trigger('click');

Ответ 2

Я использовал приведенный ниже код JavaScript, и он работает...

var clickButton = document.getElementById("<%= btnClearSession.ClientID %>");
clickButton.click();

Ответ 3

var clickButton = document.getElementById("<%= btnClearSession.ClientID %>");
clickButton.click();

Это решение работает для меня, но помните, что он не будет работать, если ваша кнопка asp

Visible = "False"

Чтобы скрыть кнопку, которая должна быть запущена с помощью этого script, вы должны скрыть ее с помощью <div hidden></div>

Ответ 4

Ни одно из решений, размещенных здесь, не будет работать для меня, это было мое возможное решение проблемы.

// In Server Side code
protected void Page_Load(object sender, EventArgs e)
{
    Page.GetPostBackEventReference(hiddenButton);
}

// Javascript
function SetSaved() {
    __doPostBack("<%= hiddenButton.UniqueID %>", "OnClick");
}

// ASP
 <asp:Button ID="hiddenButton" runat="server" OnClick="btnSaveGroup_Click" Visible="false"/>

Ответ 5

Я прожил эту проблему через два дня, и вдруг понял, что я использую этот метод click (для кнопки asp) в кнопке отправки (в кнопке html submit) javascript method...

Я имею в виду →

У меня есть кнопка отправки html и кнопка asp, подобная этим:

<input type="submit" value="Siparişi Gönder" onclick="SendEmail()" />
<asp:Button ID="sendEmailButton" runat="server" Text="Gönder" OnClick="SendToEmail" Visible="True"></asp:Button>

Ответ 6

Вы можете заполнить скрытое поле из своего кода JavaScript и выполнить явный возврат из JavaScript. Затем со стороны сервера проверьте это скрытое поле и сделайте все необходимое.

Ответ 7

document.FormName.btnSubmit.click(); 

работает для меня. Наслаждайтесь.

Ответ 8

$("#"+document.getElementById("<%= ButtonID.ClientID %>")).trigger("click");

Ответ 9

Я могу заставить все работать так:

внутри javascript-соединения, которое выполняется кнопкой html:

document.getElementById("<%= Button2.ClientID %>").click();

Кнопка ASP внутри div:

<div id="submitBtn" style="display: none;">
   <asp:Button ID="Button2" runat="server" Text="Submit" ValidationGroup="AllValidators" OnClick="Button2_Click" />
</div>

Все выполняется из файла .cs, за исключением того, что приведенный ниже код не выполняется. Нет окна сообщений и перенаправление на ту же страницу (обновите все поля):

 int count = cmd.ExecuteNonQuery();
 if (count > 0)
 {
   cmd2.CommandText = insertSuperRoster;
   cmd2.Connection = con;
   cmd2.ExecuteNonQuery();
   string url = "VaccineRefusal.aspx";
   ClientScript.RegisterStartupScript(this.GetType(), "callfunction", "alert('Data Inserted Successfully!');window.location.href = '" + url + "';", true);
  }

Любые идеи, почему эти строки не будут выполняться?