2012-03-07 90 views
0

我真的变得如此沮丧与这个jQuery, 我想o使用的getJSON我的AJAX但它只是不工作!其驱使我坚果。JSON和jQuery不工作

$.ajax({ 
       type: "GET", 
       url: '../file.php', 
       data: param, 
       async: true, 
       beforeSend: function(x) { 
       if(x && x.overrideMimeType) { 
       x.overrideMimeType("application/j-son;charset=UTF-8"); 
       } 
      }, 
      dataType: "json", 
      success: function(data){ 
       //do your stuff with the JSON data 
       alert("called"); 
      } 
      }); 

两者都只是不工作,它没有得到的回复:

我有这个,有这个从一个例子:

$.getJSON("../file.php",{filepath:g_filepath, startRow: "0"},dates); 

而且这一点。

有人可以帮助我。

在我的PHP文件中的代码是这样的:

$myArray = array(); 
while($filehandle->eof) { 

    $line = $filehandle->fgets(); 

    array_push($myArray, $line); 
    echo json_encode($myArray); 


} 

我在错误做什么呢?

+1

你确定服务器返回什么吗? – Joseph 2012-03-07 06:26:26

+2

不要发明MIME类型。 'application/json'是正确的。 – kapa 2012-03-07 06:28:09

+0

服务器可能会返回错误?使用Chrome开发人员工具或类似的请求/响应看看 – jgauffin 2012-03-07 06:29:51

回答

0

我会尽量避免给url相对路径名。将其更改为目标网页的完整路径。同样,确保目标页面实际返回内容。

您在使用Chrome或Firefox/Firebug的?启用网络输出并按照请求。它是否提出了正确的要求?

+0

它已经回到了回调函数,但响应返回null。在我的PHP中,我有一个数组,我回声json_encode();我使用Firefox /萤火虫..和它没有返回响应数据 – tinks 2012-03-07 06:39:34

+0

问题在php代码听起来像 – charlietfl 2012-03-07 06:43:13

+0

@charlietfl编辑我的问题,并添加了我的PHP代码.. – tinks 2012-03-07 06:48:42

0

有了这些样的问题逐步工作。

首先直接从浏览器测试服务。

一旦你在浏览器的工作原理,然后把它放到你的JQuery的一个网址。

事实上,我通常嘲笑通过创建一个JSON文本文件,并从Web服务器提供服务它的服务启动,请在浏览器中,然后让我的JavaScript去,最后写服务。

0

PHP应该只返回一个JSON对象并不多..你在返回JSON每个while循环调用

WRONG:

$myArray = array(); 
while($filehandle->eof) { 

    $line = $filehandle->fgets(); 

    array_push($myArray, $line); 
    echo json_encode($myArray); 


} 

应该工作:

$myArray = array(); 
while($filehandle->eof) { 

    $line = $filehandle->fgets(); 

    array_push($myArray, $line); 
} 
echo json_encode($myArray); 

也考虑萤火虫或其他的JavaScript调试工具用于测试更多的错误

+0

谢谢你..试了一下,但仍然是它重新空白... – tinks 2012-03-07 07:04:03

+0

我不明白你怎么能得到null ..你应该至少得到'[]'。调试你的PHP代码 – Vytautas 2012-03-07 07:53:52