簡體   English   中英

意外的標記 ':'。 解析錯誤。 在AJAX響應中

[英]Unexpected token ':'. Parse error. in AJAX response

我的Ajax請求代碼:

$(window).ready(function () {
    var $form = $(document).find('#name-form');
    var $display = $(document).find('#display');
    $form.on('submit', function (e) {
        e.preventDefault();
        var name = $form.find('#name').val();
        var surname = $form.find('#surname').val();
        var patronymic = $form.find('#patronymic').val();
        var year = $form.find('#year').val();
        var request = $.ajax({
            headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
            },
            dataType: 'jsonp',
            method: 'get',
            jsonp: false,
            jsonpCallback: "localJsonpCallback",
            url: 'http://127.0.0.1:8885/search?app=potato',
            data : {
                name: name,
                surname: surname,
                patronymic: patronymic,
                year: year,
            }
        });
     function localJsonpCallback(json) {
            if (!json.Error) {
                $('#display').submit();
            }
            else {
                $('#display').show();
                alert(json.Message);
            }
        }
    });
});

此代碼發送請求,這是肯定的。 但是,當它獲取JSON時,控制台會寫入錯誤的Unexpected token ':'. Parse error. Unexpected token ':'. Parse error. 我只需要簡單地顯示此json或div中的內容即可。

響應JSON為:

{
  "Report": "http://127.0.0.1:8099/chicken/eggs.html",
  "Exist": true
}

問題是什么?

您告訴jQuery您想要JSONP,但服務器返回JSON。

由於jQuery處理JSONP的方式,普通的JSON就像是javascript一樣被對待,因此您得到的錯誤實際上是瀏覽器的javascript解釋器引發的語法錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM