Return value from jQuery Ajax call

Am trying to figure out how to return a value after making an ajax call.  In the example below, option 1 and option 2 both correctly return values, but I do not seem to be getting the same result with option 3.  Here's the code:
function getLevel(cat){
	if(cat==1){
		return $('#billed').val();
	}
	else if(cat==2){
		return <?php echo $prior; ?> 
	}
	else if(cat==3){
		var eventdate = $('#billed').val();		
                $.ajax({
                        url: sURL+"utility/eventDateAjax/"+eventdate,
                        type: "POST",                        
                        success: function(data){
                                alert(data);
                                return data;
                        }
                });
	}
}

Open in new window

Can someone tell me what I am doing wrong?  Thanks.
DanielAttardAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
MrunalConnect With a Mentor Commented:
Hi,
What you are getting in alert(data)?

Check with alert(data.d);

Also try this:

$.ajax({
                        url: sURL+"utility/eventDateAjax/"+eventdate,
                        type: "POST",                        
                        success: function(data){
                                alert(data);
                                ProcessData(data);
                        }
                });

Open in new window


And in function ProcessData() process your response.

function ProcessData(output)
{
 //process your response here
}

Open in new window


OR

take look at jQuery Ajax manual for-

 var htmlOutput = $.ajax({
  url: "pagename.php",
  async: false
 }).responseText;
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.