JSON Parse Error: unexpected end of data at line 1 column 1 of the JSON data

后端 未结 2 685
借酒劲吻你
借酒劲吻你 2021-01-20 13:48

I have a database, analysis.php and index.php webpages. The analysis.php gets the data from the database, sorts it in a required pattern, and then echoes the json_enco

相关标签:
2条回答
  • 2021-01-20 14:14

    jQuery.load is asynchronous, you're trying to parse the JSON before its actually loaded. Using jQuery.getJSON loads the content, does the parsing and provides a callback you can bind to.

    jQuery.load loads the content as HTML and sets the innerHTML of the selected element, you could bind the complete handler here aswell, but you may encounter issues by loading the content as HTML and then using text to retrieve it from the DOM as some parts of your JSON may be interpreted as HTML elements.

    Better use this:

    $(document.body).on('change', '.select' , function () {
        var identification = $(this).val();
        $.getJSON(
            'analysis.php?data=' + identification + ' #data',
            function (data) {
               console.log(data);
            }
        );
    });
    
    0 讨论(0)
  • 2021-01-20 14:17

    In addition to LJ_1102's solution, here is a way to fix your current snippet:

    JSONText.load('analysis.php?data=' + identification + ' #data', function() {
    
        console.log("JSON Imported: '" + identification + "'");
        var obj = jQuery.parseJSON(JSONText.text());
        console.log(JSONText.text());
    
    });
    
    0 讨论(0)
提交回复
热议问题