我正在尝试从PHP文件中获取一些数据,这些数据在执行后只给出一个数字:
<?php
include '../assets/class/login/loginsys.php';
$extension = new extension;
$count = $extension->userCount();
echo $count;
?>
所以$count
变量只是一个数字。我正在尝试检索该数字并将其放入js变量中以供进一步使用(我需要它几次,如果只有一次我会使用$.get()
并将其应用到我需要的容器中) :
var oXHR = new XMLHttpRequest();
oXHR.open("GET", "admin/user-count.php", true);
oXHR.onreadystatechange = function (oEvent) {
if (oXHR.readyState === 4) {
if (oXHR.status === 200) {
console.log(oXHR.responseText)
} else {
console.log("Error", oXHR.statusText);
}
}
};
oXHR.send();
我尝试过上述方法但收效甚微,但我也尝试过这样:
var users = $.get('admin/user-count.php', function(data) {
console.log('There are '+data+' users found');
return data;
});
同样的结果,没什么。那么我做错了什么或者我该怎么做呢?
编辑我犯了一个错误,我现在修复了,第一种方法和第二种方法一样有效。但现在我需要将第一个方法得到的数据存储到一个变量中,以便以后可以使用它。我该怎么做以及两种方法中的哪一种更好?
答案 0 :(得分:2)
如果你已经包含了jQuery,我会使用第二个代码:
$.get('admin/user-count.php', function(data)
{
// Don't use "var" here, otherwise the variable won't be global!
myGlobalVar = parseInt(data, 10);
// Also possible: window["myGlobalVar"] = parseInt(data, 10);
});
如果您想使用纯JavaScript:
var oXHR = new XMLHttpRequest();
oXHR.open("GET", "admin/user-count.php", true);
oXHR.onload = function(evt)
{
myGlobalVar = parseInt(oXHR.responseText,10);
}
oXHR.onerror = function(evt)
{
alert("Error!");
}
oXHR.send();