Как вызвать событие 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 по идентификатору, но не работает.
Любая помощь будет действительно оценена.
Спасибо
Ответы
Ответ 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