Pergunta

Eu tenho um linkbutton que preciso executar um clique para causar um postback. O alvo de link real é:

javascript:__doPostBack('ctl00$c1$btnRefreshGrid','');

Clicar no link executa o postback, conforme verificado por um ponto de interrupção no código-behind. Também colando javascript:__doPostBack('ctl00$c1$btnRefreshGrid','') Na barra de endereço do navegador funciona com o mesmo efeito.

Eu tentei o seguinte sem efeito:

__doPostBack('ctl00$c1$btnRefreshGrid','');    
$('#ctl00$c1$btnRefreshGrid').click();
$('#ctl00$c1$btnRefreshGrid').trigger('click');
eval($('#ctl00$c1$btnRefreshGrid').attr("href"));

Eu tentei usar os dois <%= btnRefreshGrid.UniqueID %> e <%= btnRefreshGrid.ClientID %> Para gerar o seletor.

Foi útil?

Solução

Você estava perto, isso funciona no Firefox:

 function clickMyButton() {
   javascript:__doPostBack('<%= MYBUTTONID.UniqueID %>','')
};

Outras dicas

o seguinte trabalho para a seguinte âncora (originalmente ASP: LinkButton no lado do servidor) dentro de Li

<li>
<a id="ctl00_ContentPlaceHolder1_ChangeNumberItemGrd_ctl01_FindByID" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$ChangeNumberItemGrd$ctl01$FindByID','')">287573</a>
</li>

Porque eu não tenho o nome, devo gerá -lo

$(".msglist li").on("click", function () {    
    var postbackArg = $(this).find("a").prop("id").replace(/_/g,"$");    
    __doPostBack(postbackArg, '');

});
$("#<%= btnRefreshGrid.ClientID %>").click();

Deveria trabalhar...

Espero que ajude!!!

No Firebug, você pode obter o nome correto e a ação do link do botão Link:

<a id="MainContent_ctl00_Submit_Button" href="javascript:__doPostBack('ctl00$MainContent$ctl00$Submit_Button','')"></a>
var Eventtarget = $("#btnSave").attr("name");
__doPostBack(Eventtarget, "");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top