Click here to Skip to main content
15,892,298 members
Articles / Web Development / ASP.NET
Tip/Trick

How to Abort a AJAX Call Before Calling the Same Again

Rate me:
Please Sign up or sign in to vote.
4.63/5 (6 votes)
7 Apr 2013CPOL 38K   5   1
Aborting an fired Ajax call before firing the same again

Introduction

I want to show auto search result just below the search box. After each character write, I want to do an Ajax call and get the data from the database. In this case, if someone wrote 4 characters, then 4 Ajax calls will be fired and from all these Ajax calls, the last response will be taken as a search result. Sometimes, it may not be correct because at times, the earlier fired Ajax call can give response after the later fired Ajax call, in this case we may have inconsistent data. To solve this issue, we have to abort the previously fired Ajax calls.

The sample code given below solves the problem.

Using the Code Snippet

HTML
<input id="searchbox" name="searchbox" type="text" />
<div id="data"></div>
JavaScript
jQuery(document).ready(function(){
    var currentRequest = null;
    jQuery('#searchbox').keyup(function() {
        var text = jQuery(this).val();
        currentRequest = jQuery.ajax({
            type: 'POST',
            data: 'search_text=' + text,
            url: 'AJAX_URL',
            beforeSend : function()    {           
                if(currentRequest != null) {
                    currentRequest.abort();
                }
            },
            success: function(data) {
                jQuery('#data').html(data).show();
            }
        });
    });});

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



Comments and Discussions

 
GeneralMy vote of 2 Pin
toanloau15-Sep-14 23:25
toanloau15-Sep-14 23:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.