2009-10-16 68 views
0

我使用ASP(经典)实用程序文件从一个SQL数据库中创建JSON对象,请参阅: http://code.google.com/p/aspjson/的Json“分析器错误”从服务器到客户端

这里是我从服务器端获取:

{"results":[{"Opt_Name":"BARR","Opt_FirstName":"TomTest","Comp_Name":"My_Company"}]} 

哪个是有效的json,至少对jsonlint有效。

但这绝不会触发我的回调函数(取),我从我的误差函数(myFunc的)这儿得到一个ParserError:

$(document).ready(function() 
{ 
    function myfunc(XMLHttpRequest, textStatus, errorThrown) 
    { 
     alert("call failed " + textStatus + " error " + errorThrown + " Xhr " + XMLHttpRequest); 
    } 

    $.ajaxSetup({ 
     error:myfunc 
    }); 

    $.getJSON("jsonGETdataTest.asp", Fetch); 

    function Fetch(data) 
    { 
     alert("blop"); 
    } 
}); 

我不知道下一步该怎么做!

如果任何人在这一个领先,我会非常gratefull。 感谢您的反击。

+0

,使在取功能“数据”的警告,你看出来了[目的]? – 2009-10-16 16:25:57

回答

1

好吧, 感谢大家的帮助, 它看起来我终于找到了答案!

为ASP经典

response.AddHeader "Content-type", "text/json" 

这就是我的回答的缺失的部分:-s

0

我不知道为asp,但在PHP中正确的字符串将是'[{“Opt_Name”:“BARR”,“Opt_FirstName”:“TomTest”,“Comp_Name”:“My_Company”}]''。 在PHP中,我没有“结果”之前。

+0

非常感谢Cesar,但是, 正如我前面所说的,json格式化是正确的, 我试过了你所建议的那个,但它仍然给出了“parsererror”。 因为我会在YUI数据源我要坚持到格式化例子中使用它,他们给这里: VAR dsLocalJSON =新YAHOO.util.LocalDataSource({ :3,总 :20, 结果: [name:“apple”,type:“fruit”,color:“red”}, {name:“broccoli”,type:“veg”,color:“green”}, {name:“cherries”,类型:“水果”,颜色:“红”}] }); 请参阅: http://developer.yahoo.com/yui/datasource/ – Tom 2009-10-16 14:49:46

0

而不是

$.getJSON("jsonGETdataTest.asp", Fetch); 

    function Fetch(data) 
    { 
     alert("blop"); 
    } 

尝试这样的事:

$.getJSON("jsonGETdataTest.asp", function(data){ 
    ...do something with data object... 
    }); 

看到http://docs.jquery.com/GetJSON

+1

那有什么不同? – 2009-10-16 14:53:44

+0

谢谢杰克, 但这两种方式都是正确的, 我认为它与javascript语法无关。 不知何故jQuery getJSON函数不喜欢它从服务器端获得的内容,即使它是有效的json。 我已经搜索了很多关于这个“解析器错误”,但没有任何相关的被发现到目前为止。 – Tom 2009-10-16 14:56:17

相关问题