0

動的な JSONP エコーを生成しようとしていますが、js ajax 呼び出しの後にインスペクター ツールでエラーが発生します。

Uncaught ReferenceError: jQuery191019304498913697898_1365868235193 is not defined index.php:1

PHP:

<?php

header('Content-type: application/javascript; charset=utf-8');

$array = array();
array_push($array, array('name' => 'A', 'host' => 'A.com'));
array_push($array, array('name' => 'B', 'host' => 'B.com'));

//$jsonp = json_encode($array, JSON_FORCE_OBJECT);
$jsonp = json_encode($array);


if(isset($_GET['callback']))
{
    echo $_GET['callback'].'('.$jsonp.')';
}
else
{
    echo $json;
}

?>

JS:

$.ajax({
    username: username,
    password: password,
    url: url,
    dataType: 'jsonp',
    crossDomain: true,
    ifModified: true,
    success: function (data, status, jqXHR) {
        console.log(data);
        $.each(data, function(index, value) {
            console.log(value['name']);
        });
    }
});

Ajax 呼び出し応答:

jQuery191019304498913697898_1365868235193([{"name":"A","host":"A.com"},{"name":"B","host":"B.com"}])

何か考えはありますか?私の間違いはどこですか?

ありがとう

4

2 に答える 2

0

これを変える

 header('Content-type: application/javascript; charset=utf-8');

 header('Content-type: application/json; charset=utf-8');
于 2013-04-13T16:12:23.070 に答える