我正在尝试使一些基本的Javascript和PHP能够应对参与的编码挑战,并且我需要从PHP文件中接收一个JSON对象,以便在我的Javascript中使用它在HTML上显示当前日期页。我尝试了几种不同的方法,但似乎无法使用,在这里我缺少什么吗?
我尝试使用jQuery getJSON以及在与Javascript相同的HTML文件中运行PHP。
这是PHP文件及其输出:
echo json_encode([
"date" => getthedate()
]);
function getthedate() {
return date("Y/m/d");
}
{"date":"2019\/07\/04"}
这是我最近在Javascript中尝试过的内容:
function getDate() {
var theDate = $.getJSON(
"http://localhost/coding-challenge/get-date.php",
function(data)
);
JSON.parse(theDate);
document.getElementsByClassName("date")[0].innerHTML = theDate;
}
我希望这个Javascript能够检索PHP文件所回显的JSON对象,然后将其显示在HTML文件的“ date”类中(一个空的段落)。但是,这只会导致日期段落所在的空白处。
答案 0 :(得分:1)
$.getJSON
是异步的,因此应在其成功回调中设置数据:
function getDate() {
$.getJSON("http://localhost/coding-challenge/get-date.php", data => {
document.getElementsByClassName("date")[0].innerHTML = data;
});
}
答案 1 :(得分:0)
尝试为JSON发送正确的HTTP响应标头。然后jQuery将为您解析响应。
header('Content-Type: application/json');
echo json_encode([
'date' => getthedate()
]);
function getthedate() {
return date("Y/m/d");
}
JS
$.getJSON("http://localhost/coding-challenge/get-date.php", function( data ) {
console.log(data);
alert(data.date);
});