appeler jQuery __doPostBack sur LinkButton
-
25-09-2019 - |
Question
J'ai un LinkButton que je dois effectuer un clic sur pour provoquer une publication. La cible du lien réel est:
javascript:__doPostBack('ctl00$c1$btnRefreshGrid','');
En cliquant sur le lien fait effectuer la publication, tel que vérifié par un point d'arrêt dans le code sous-jacent. coller également javascript:__doPostBack('ctl00$c1$btnRefreshGrid','')
dans la barre d'adresse du navigateur fonctionne avec le même effet.
Je l'ai essayé ce qui suit sans effet du tout:
__doPostBack('ctl00$c1$btnRefreshGrid','');
$('#ctl00$c1$btnRefreshGrid').click();
$('#ctl00$c1$btnRefreshGrid').trigger('click');
eval($('#ctl00$c1$btnRefreshGrid').attr("href"));
Je l'ai essayé d'utiliser les deux <%= btnRefreshGrid.UniqueID %>
et <%= btnRefreshGrid.ClientID %>
pour générer le sélecteur.
La solution
Vous étiez proche, cela fonctionne dans Firefox:
function clickMyButton() {
javascript:__doPostBack('<%= MYBUTTONID.UniqueID %>','')
};
Autres conseils
les travaux suivants pour l'ancrage suivant (à l'origine asp: LinkButton côté serveur) à l'intérieur li
<li>
<a id="ctl00_ContentPlaceHolder1_ChangeNumberItemGrd_ctl01_FindByID" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$ChangeNumberItemGrd$ctl01$FindByID','')">287573</a>
</li>
parce que je n'ai pas le nom que je dois générer de lui
$(".msglist li").on("click", function () {
var postbackArg = $(this).find("a").prop("id").replace(/_/g,"$");
__doPostBack(postbackArg, '');
});
$("#<%= btnRefreshGrid.ClientID %>").click();
Si le travail ...
it helps !!!
Dans Firebug vous pouvez obtenir le nom correct et de l'action lien du bouton de lien:
<a id="MainContent_ctl00_Submit_Button" href="javascript:__doPostBack('ctl00$MainContent$ctl00$Submit_Button','')"></a>
var Eventtarget = $("#btnSave").attr("name");
__doPostBack(Eventtarget, "");