Comment déclencher un événement de clic sur un bouton côté serveur à partir de JavaScript?
J'ai essayé comme ça:
document.getElementById("<%= ButtonID.ClientID %>").click();
Mais pas d'utilisation. Comment puis-je le faire?
Vous pouvez simplement placer cette ligne dans une fonction JavaScript:
__doPostBack('btnSubmit','OnClick');
Ou faire quelque chose comme ça:
$('#btnSubmit').trigger('click');
var clickButton = document.getElementById("<%= btnClearSession.ClientID %>");
clickButton.click();
Cette solution fonctionne pour moi, mais rappelez-vous qu'elle ne fonctionnera pas si votre bouton asp a
Visible = "False"
Pour masquer un bouton qui devrait être déclenché avec ce script, vous devez le masquer avec <div hidden></div>
J'ai utilisé le code JavaScript ci-dessous et cela fonctionne ...
var clickButton = document.getElementById("<%= btnClearSession.ClientID %>");
clickButton.click();
Aucune des solutions affichées ici ne fonctionnerait pour moi, c’était ma solution finale au problème.
// 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"/>
Vous pouvez remplir un champ caché à partir de votre code JavaScript et effectuer une publication explicite à partir de JavaScript. Ensuite, côté serveur, vérifiez ce champ caché et faites ce qui est nécessaire.
$("#"+document.getElementById("<%= ButtonID.ClientID %>")).trigger("click");
document.FormName.btnSubmit.click();
travaille pour moi. Prendre plaisir.