2

When creating and executing a ajax request queue with $.manageAjax, I call ajaxManager.abort();, to abort the entire queue due to error, at which time I get an error stating: q[num] has no properties (jquery.ajaxmanager.js line 75)

Here is the calling code:

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

There are 4 requests in the queue, this is being called in the success of the first request, if certain criteria is met, the queue needs to be aborted.

Any ideas?

4

1 に答える 1

1

反復を開始したときに予想していたよりも、q の項目が少ないようです。スクリプトが q[q.length]、つまり最後の要素の後の要素にアクセスしようとしている可能性があります。

成功したリクエストがキューからポップされ、競合状態になっている可能性はありますか? ライフサイクルがすでに完了しているリクエストを中止しようとしていますか? あるいは、よくあるようなばかげたミスをして、ループの終了条件を間違えていませんか?

ほんの少しの考えですが、お役に立てば幸いです。

于 2008-08-28T06:46:26.397 に答える