Unable to receive JSON from JQuery ajax call

Tags: json ajax jquery
Question!

I have determined that my JSON, coming from the server, is valid (making the ajax call manually), but I would really like to use JQuery. I have also determined that the "post" url, being sent to the server, is correct, using firebug. However, the error callback is still being triggered (parsererror). I also tried datatype: text.

Are there other options that I should include?

$(function() {
    $("#submit").bind("click", function() {
        $.ajax({
            type: "post",
            url: "http://myServer/cgi-bin/broker" ,
            datatype: "json",
            data: {'start' : start,'end' : end},
            error: function(request,error){
                alert(error);
            },
            success: function(request) {
                alert(request.length);
            }
        }); // End ajax
    }); // End bind
}); // End eventlistener


Answers

The data parameter is wrong. Here is an example that works:

data: { index: ddl.selectedIndex },

This contructs an object with property called index with value ddl.selectedIndex.

You need to remove the quotes from your data parameter line

Good luck A

By : Big Al


Why myResult instead of request?

success: function(request) {
                alert(myResult.length);
            }


Here are a few suggestions I would try:

1) the 'datatype' option you have specified should be 'dataType' (case-sensitive I believe)

2) try using the 'contentType' option as so:

contentType: "application/json; charset=utf-8"

I'm not sure how much that will help as it's used in the request to your post url, not in the response. See this article for more info: http://encosia.com/2008/06/05/3-mistakes-to-avoid-when-using-jquery-with-aspnet-ajax (It's written for asp.net, but may be applicable)

3) Triple check the output of your post url and run the output through a JSON validator just to be absolutely sure it's valid and can be parsed into a JSON object. http://www.jsonlint.com

Hope some of this helps!



This video can help you solving your question :)
By: admin