jQuery.getJSON doesn't trigger callback

后端 未结 4 463
没有蜡笔的小新
没有蜡笔的小新 2020-12-08 19:54

I have a html code:




        
相关标签:
4条回答
  • 2020-12-08 20:33

    It is likely that the json is not properly formed. Sometimes this happens to me when my code, that should be producing json is generating an error. Two options:

    • Use firebug to view the JSON response

    • Setup error handling in your jquery code using the jQuery.ajaxSetup options such as:

        $.ajaxSetup({"error":function(XMLHttpRequest,textStatus, errorThrown) {   
            alert(textStatus);
            alert(errorThrown);
            alert(XMLHttpRequest.responseText);
        }});
      

    Using the error handling for debugging is great, since you will know immediately when there is a problem with your response. You can check out the jQuery documentation for jQuery.ajax which has all of the available options for jQuery.ajaxSetup.

    EDIT: A third option would be to just open the URL that should be generating the JSON and run the output through JSON Lint to validate it.

    0 讨论(0)
  • 2020-12-08 20:37

    I ran into this a while back and rewrote a wrapper for jQuery's Ajax which allows you to pass the normal getJSON and an additional error callback per get.

    http://www.nurelm.com/themanual/2010/08/09/self-indulgent-code-jquery-getjson-with-error-handling/

    0 讨论(0)
  • 2020-12-08 20:53

    I think you are missing the trailing $ in url pattern.

    0 讨论(0)
  • 2020-12-08 20:58

    Are you sure the JSON is valid? take a look at the response directly or use Firebug

    0 讨论(0)
提交回复
热议问题