LinkButton não está disparando no servidor de produção

Este é um bom candidato para o "Programa de Certificação de Obras da Minha Máquina" .

Eu tenho o seguinte código para um LinkButton ...


  
Do you wish to upgrade?

Ele usa um controle personalizado que simplesmente adiciona código antes e depois do conteúdo para formatá-lo como um diálogo pop-up. O botão Sim é um HyperLink porque executa o JavaScript para ocultar o diálogo e mostrar um diferente. O botão Não é um LinkButton porque precisa ser PostBack para processar esse valor.

Eu não tenho um evento onClick registrado com o LinkButton porque eu simplesmente verifico se IsPostBack é verdadeiro. Quando executado localmente, o PostBack funciona bem e tudo corre bem. Quando publicado no nosso servidor de Desenvolvimento, o botão Não não faz nada quando clicado. Eu estou usando o mesmo navegador ao testar localmente versus no servidor de desenvolvimento.

Meu pensamento inicial é que talvez um validador esteja impedindo que o PostBack seja acionado. Eu uso alguns validadores em outra seção da página, mas eles são atribuídos a um grupo de validação específico ao qual o não LinkButton não está atribuído. No entanto, o problema é porque ele funcionaria localmente, não no servidor de desenvolvimento.

Alguma ideia?

0

3 Respostas

Meu entendimento do ValidationGroup é que um botão sem grupo especificado acionaria todos os validadores na página. Você já tentou dar ao LinkButton um ValidationGroup diferente?

0
adicionado

Verifique o html que é emitido na produção e certifique-se de que ele tenha o __doPostback() e que não existam métodos globais que estejam observando o clique e cancelando o evento. Fora isso, se você acha que poderia estar relacionado à validação, você poderia tentar adicionar CausesValidation ou qualquer outra coisa a false e ver se isso ajuda. Caso contrário, um erro "funciona na minha máquina" é difícil de depurar sem estar presente e conhecer as configurações de DEV vs PROD.

0
adicionado
Isso corrigiu o problema. Eu sei que os problemas do "Works on my Machine" estão com a cabeça duplicada. Quaisquer teorias sobre quais diferenças entre meu servidor local e de desenvolvimento causariam esse tipo de problema?
adicionado o autor Chris, fonte

Eu tive um problema parecido. Eu criei um form com um updatePanel, no formulário estavam alguns linkbuttons que abriam um extender modalpopup do Ajax. Eles funcionaram bem até eu adicionar autenticação ao site. Depois disso, eles não fizeram nada.

Lendo sua solução, descobri que alguns dos botões de link estavam funcionando, eles eram os que tinham o conjunto explicitamente CausesValidation (eu só o coloco naqueles onde eu faria isso verdade). Adicionar CausesValidation = "false" a todos os outros links permitiu que eles funcionassem corretamente depois que eu fosse autenticado.

Obrigado por seus comentários todos, salvou o meu dia!

0
adicionado
Trabalhou para mim !!
adicionado o autor Arbaaz, fonte