Pergunta

Quando a criação e a execução de uma solicitação ajax fila com $.manageAjax, Eu chamo ajaxManager.abort();, para anular a fila inteira devido a erro, no momento em que eu recebo uma mensagem de erro informando: q[num] has no properties (jquery.ajaxmanager.js line 75)

Aqui está o código de chamada:

var ajaxManager = $.manageAjax({manageType:'sync', maxReq:0});
// setup code calling ajaxManager.add(...)

// in success callback of first request
ajaxManager.abort(); <-- causes error in jquery.ajaxManager.js

Há 4 pedidos na fila, isso está sendo chamado o sucesso do primeiro pedido, se determinados critérios, a fila tem de ser anulada.

Qualquer idéias?

Foi útil?

Solução

Parece que você tem menos itens em q que você estava esperando quando você começou a iteração.O script pode estar a tentar aceder q[q.comprimento], i.e.o elemento depois do último elemento.

Poderia ser que o seu pedido bem sucedido tem sido removido da fila, e você tem uma condição de corrida?Você está tentando cancelar um pedido, que já completou seu ciclo de vida?Como alternativa, você cometeu um erro bobo como as pessoas às vezes não, e tem o seu ciclo condição de terminação de errado?

Apenas alguns pensamentos, espero que ajude.

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