Pergunta

É possível impedir que a chamada _DoPostback () seja renderizada em um botão?

Eu gostaria de adicionar alguma lógica personalizada antes de ligar para o postback.

Eu adicionei um evento onclick ao botão

por exemplo

<button id="manualSubmit" runat="server" class="manual-submit" onclick="$('#jeweller-form').hide();"  />

No entanto, isso é renderizado em linha antes do _doPostback (), mas o postback é demitido antes que o jQueryhide ocorra

Eu gostaria de chamar minha própria função JS e depois acionar manualmente o postback

alguma ideia?

Foi útil?

Solução

Experimente isso:

<button runat="server" id="Test" onserverclick="Test_ServerClick">Submit</button>

<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        var o = $("#Test"), c = o.attr("onclick");
        o
        .removeAttr("onclick")
        .click(function(e) {
            o.fadeOut("slow", function() {
                o.fadeIn("slow", function() {
                    c(e);
                });
            });
            return false;
        });
    });
</script>

Outras dicas

Adicionar retorno falso; Após o código do lado do cliente no evento de clique. No htmlControl, não achava que isso renderizou o __DOPOSTBACK; é o controle que torna o _dopostback e a maneira comum de impedir isso para esse controle é:

<asp:Button ... OnClientClick="doThis();return false;" />

Que renderiza essas declarações JS antes do __DOPOSTBACK.

Hth.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top