所以我只是想创建一个计数器,每次单击按钮时它都会更新数据库中的值,然后我想在页面上显示该值。我更新值的代码可以正常工作,但显示该值的代码不起作用。
这是我刷新计数器的 js 代码:
<script>
setInterval("checkCount()",500);
function checkCount()
{
jQuery.ajax({
url: 'http://ntc.aiesecfrance.org/server_count_get/',
dataType: 'json',
success: function(data) {
alert("data.count");
}
});
};
</script>
这是我从数据库中获取值的 php 代码。
$connection = mysqli_connect("localhost", "test", "", "test");
if (mysqli_connect_errno()) {
echo 'connection failed';
}
// Fetching the value
$query = "SELECT count FROM counterval WHERE id=1";
$count = mysqli_query($connection,$query);
$value = mysqli_fetch_array($count);
header('Content-type: application/json');
echo json_encode($value);
?>
但是有了这个我就没有警觉了。它只是没有出现。 这是 php 返回内容的示例:
{"0":"8","count":"8"}
预先感谢您的帮助。
最佳答案
您必须删除引号。
它将是:
警报(data.count)
编辑
试试这个。
jQuery.get('http://ntc.aiesecfrance.org/server_count_get/', function(r) {
var json = $.parseJSON(r);
alert(json.count);
});
我希望你包括了 jQuery。无论如何,也尝试将函数放在里面
$(function() {
function checkCount() { ... }
});
编辑 2(重要)
我看到输出是一个 HTML 页面,而不仅仅是 JSON。试试这个。
$.get('http://ntc.aiesecfrance.org/server_count_get/', function(r) {
var $html = $(r);
var json_value = $html.find('#post-291 .entry-content').text();
var json = $.parseJSON(json_value);
alert(json.count);
});
无论如何,您不能进行跨源调用。
关于javascript - Ajax Json 请求不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32483559/