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

Как вызвать событие asp: Button OnClick с использованием JavaScript?

У меня есть вопрос, у меня есть кнопка, как показано ниже:

<asp:Button ID="savebtn" runat="server" OnClick="savebtn_Click" Visible="false" />

Затем у меня есть кнопка HTML, как показано ниже:

<button id="btnsave" onclick="fncsave">Save</button>

У меня есть javascript ниже:

<script type="text/javascript">
     function fncsave()
     {
        document.getElementById('<%= savebtn.OnClick %>').click()
     }
</script>

Теперь мой вопрос: как я могу вызвать asp: Button OnClick из кнопки HTML? Я прочитал, что вы можете сделать это, вызвав JavaScript по идентификатору, но не работает.

Любая помощь будет действительно оценена.

Спасибо

4b9b3361

Ответ 1

Установите style= "display:none;". Установив visible=false, он не будет отображать кнопку в браузере. Таким образом, клиентская сторона script не выполнит.

<asp:Button ID="savebtn" runat="server" OnClick="savebtn_Click" style="display:none" />

html разметка должна быть

<button id="btnsave" onclick="fncsave()">Save</button>

Измените javascript на

<script type="text/javascript">
     function fncsave()
     {
        document.getElementById('<%= savebtn.ClientID %>').click();
     }
</script>

Ответ 2

Если вы открыты для использования jQuery:

<script type="text/javascript">
 function fncsave()
 {
    $('#<%= savebtn.ClientID %>').click();
 }
</script>

Кроме того, если вы используете .NET 4 или лучше, вы можете сделать ClientIDMode == static и упростить код:

<script type="text/javascript">
 function fncsave()
 {
    $("#savebtn").click();
 }
</script>

Ссылка: Статья MSDN для Control.ClientIDMode