Javascript jQuery$.getJSON未返回数据
我正在通过$.getJSON对我的PHP脚本进行AJAX调用。问题是,PHP返回的是json编码的数据,但我的脚本不是console.loggingJavascript jQuery$.getJSON未返回数据,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在通过$.getJSON对我的PHP脚本进行AJAX调用。问题是,PHP返回的是json编码的数据,但我的脚本不是console.logging function Club(){ this.URL = "http://localhost/imp03/includes/ajaxCall.php"; } Club.prototype.loadData = function(){ $.getJSON(Club.URL, function(data){ console
function Club(){
this.URL = "http://localhost/imp03/includes/ajaxCall.php";
}
Club.prototype.loadData = function(){
$.getJSON(Club.URL, function(data){
console.log(data);
});
}
控制台中没有错误,这是我的PHP脚本
$db = new Database(HOST, USER, PASS, DB);
$array = $db->getData();
header('Content-Type: application/json');
echo json_encode($array);
exit;
这是我的数据库类中负责获取数据的方法
public function getData(){
try{
$sql = $this->db->prepare("SELECT * FROM inlever3");
$sql->execute();
$result = $sql->fetchAll();
return $result;
} catch(PDOException $e){
echo $e;
return false;
}
}
Club
是函数,它没有URL
属性
Club.prototype.loadData = function(){
$.getJSON(Club.URL, function(data){
console.log(data);
});
}
应该是
Club.prototype.loadData = function(){
// here change Club.URL to this.URL
$.getJSON(this.URL, function(data){
console.log(data);
});
}
然后像这样使用它:
var club = new Club();
club.loadData();
Club
是函数,它没有URL
属性
Club.prototype.loadData = function(){
$.getJSON(Club.URL, function(data){
console.log(data);
});
}
应该是
Club.prototype.loadData = function(){
// here change Club.URL to this.URL
$.getJSON(this.URL, function(data){
console.log(data);
});
}
然后像这样使用它:
var club = new Club();
club.loadData();
刚试过,效果如期: 您需要在
$.getJSON()
调用中使用this.URL
而不是Club.URL
test.php
<?php
if (isset($_GET['loadData']))
{
// dummy data
exit(json_encode(
array('hello' => 'world')
));
}
?>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
function Club(){
this.URL = "test.php?loadData";
}
Club.prototype.loadData = function(){
$.getJSON(this.URL, function(data){
console.log(data);
});
}
var c = new Club();
c.loadData();
</script>
功能俱乐部(){
this.URL=“test.php?loadData”;
}
Club.prototype.loadData=函数(){
$.getJSON(this.URL,函数(数据){
控制台日志(数据);
});
}
var c=新俱乐部();
c、 loadData();
刚刚尝试过,它可以正常工作:
您需要在$.getJSON()
调用中使用this.URL
而不是Club.URL
test.php
<?php
if (isset($_GET['loadData']))
{
// dummy data
exit(json_encode(
array('hello' => 'world')
));
}
?>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
function Club(){
this.URL = "test.php?loadData";
}
Club.prototype.loadData = function(){
$.getJSON(this.URL, function(data){
console.log(data);
});
}
var c = new Club();
c.loadData();
</script>
功能俱乐部(){
this.URL=“test.php?loadData”;
}
Club.prototype.loadData=函数(){
$.getJSON(this.URL,函数(数据){
控制台日志(数据);
});
}
var c=新俱乐部();
c、 loadData();
首先,$.getJSON需要服务器返回json类型的数据,需要json编码(数组)。如果可能,添加JSFIDLE您将获得更多响应。当您导航到http://localhost/imp03/includes/ajaxCall.php
在您的浏览器中?@TechStone我已经编辑了我的代码,包含了标题,我正在对数据进行json_编码,仍然没有任何更改。@Dave:很难包含JSFIDLE,因为我不能包含PHP。霍尔特:我看到了我想要的JSON数据首先,$.getJSON需要服务器返回json类型的数据,需要json编码(数组)。如果可能,添加一个JSFIDLE,您将获得更多响应。当您导航到http://localhost/imp03/includes/ajaxCall.php
在您的浏览器中?@TechStone我已编辑了我的代码,包括标题,我正在对数据进行json_编码,仍然没有变化。@Dave:很难包含JSFIDLE,因为我不能包含PHP。霍尔特:我看到了我想要的JSON数据它不会有任何改变@Vimalraj这是什么意思?他可能有问题URL@LatheesanKanes对不起,在这里他甚至可以使用c.URL
它不会做任何改变@Vimalraj这是什么意思?他可能有问题URL@LatheesanKanes对不起,这里他甚至可以使用c.URL