0

更新:现在我可以看到数据已加载(从 F12 > Chrome 上的网络)。但是跨度不会使用从 JSON 加载的数据进行更新 :(

我有错误“Uncaught SyntaxError: Unexpected token”,但经过数小时的搜索和测试,我不知道为什么。

index.html 头:

<script type="text/javascript">
    var displayResult = function(response){
        $("#fruit_name").append(response.fruit_name);
        $("#fruit_color").append(response.fruit_details.Color);
        $("#fruit_taste").append(response.fruit_details.Taste);
    }
    var response = $.ajax({
    type: "GET",
    dataType:"json",
    url: "https://www.domain.tld/api/?core=fruits&function=getFruits",
    data: "",
    success: displayResult
});
</script>

index.html 正文:

<p>Fruit name : <span id="fruit_name"></span></p>
<p>Fruit color : <span id="fruit_color"></span></p>
<p>Fruit taste : <span id="fruit_taste"></span></p>

api文件(PHP):

$array = array(
            "fruit_name" => "Tomato",
                "fruit_details" => array(
                    "Color" => "red",
                    "Taste" => "acid"
                )
            );
echo json_encode($array,JSON_UNESCAPED_UNICODE);

api原始返回:

{"fruit_name":"Tomato","fruit_details":{"Color":"red","Taste":"acid"}}

有人能帮我吗 ?

内容 JSON 作为 Content-Type 发送:application/json

谢谢你。

4

2 回答 2

0
url: "https://www.domain.tld/api/?core=fruits&function=getFruits&callback=?",

callback在 url 中使用了一个参数,这意味着jQuery 会将其视为JSONP 调用- 您的响应无效。删除它,您的响应将被正确解析为 JSON:

url: "https://www.domain.tld/api/?core=fruits&function=getFruits",
于 2013-08-29T15:30:11.707 回答
-1

这是 jQuery 代码:

$("#fruit_name" ).val(response.fruit_name);
$("#fruit_color" ).val(response.fruit_color);
$("#fruit_taste" ).val(response.fruit_taste);

确保它附有:

$(document).ready(function() {
    $("#fruit_name" ).val(response.fruit_name);
    $("#fruit_color" ).val(response.fruit_color);
    $("#fruit_taste" ).val(response.fruit_taste);
});
于 2013-08-29T15:26:27.923 回答