Pergunta

Ok, eu tenho uma tabela, feita por um GridView, e anexado a tablesorter para ele, ele funciona muito bem.

Então eu colocá-lo dentro de um updatepanel e adicionou o código para religar-lo em uma nova postagem, aqui é o meu script:

function loadEvents() { $("table[id$='gv']").tablesorter(); }
$(document).ready(function() { loadEvents(); });
function reBind() {
    if (Sys.WebForms.PageRequestManager) {
        var prm = Sys.WebForms.PageRequestManager.getInstance();
        prm.add_endRequest(function() { loadEvents(); });
    }
}

O que funciona muito bem, eu carregar o gridview, a triagem obras.

  • clico em um botão que envia de volta, ele funciona bem.
  • I clique novamente e o primeiro clique trabalhos para classificar, classificando-se, mas ele fica preso - lá - eu posso mudar colunas, mas nunca vai tipo para baixo? Mas então ...
  • I clique novamente, e ele funciona muito bem

Esta continua, trabalhando cada dois clique ... alguma idéia?

Foi útil?

Solução

Seus sons problemáticas como uma questão de lado servidor - o tipo só funciona após a tabela foi ligado no mesmo pedido. Caso contrário, o gancho-up de eventos para o tipo não consigo encontrar nada.

É claro - se você já tiver ligado a tabela que já foi classificada -. Então, agora você tem que obter os dados novamente

Este tipo de problema é um problema comum com o modelo de página do evento horrível .Net.

Mais simples correção é para se certificar de que sua tabela é de rebote na postback ajax depois viewstate foi carregado, mas antes de eventos de fogo, em seguida, obter os dados novamente após o evento foi acionado. O problema é que, em seguida, você tem seus dados duas vezes.

Uma correção melhor é evitar o uso de eventos hook-ups da Net em quaisquer elementos de página dinâmica.

Estes tipos de problemas com o modelo página do evento Net é parte da razão há tanto interesse em MVC.

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