用jquery消耗json? .getJSON回调不会触发

时间:2013-09-04 11:08:19

标签: javascript jquery ajax json web-services

我有一个cs webservice,当传递id:“jdoe”

时返回这个json
<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">[{"department":"Sales","mail":"jdoe@acme.com"}]</string>

我正在寻找显示部门的最小jquery代码,我正在尝试这个:

$(document).ready(function () {
    url = "http://test.mydomain.com/WebService.asmx/GetDEPT?callback=?"
    alert("start");
    $.getJSON( url, { id: "jdoe" }, function( data ) {  alert(data.department); });
    alert("end");
});

我只看到开始和结束的提醒。

我已经检查了小提琴,并且在调用时没有看到错误。

在本地网络服务器上,我被提示输入id,它确实返回了预期的json。

我的cs看起来像这样:

    public string GetDEPT(string id)
{
    var json = "";
    var umid  = from result in dc.GET_DEPT(id) select result;

    JavaScriptSerializer jss = new JavaScriptSerializer();

    json = jss.Serialize(id);

    return json;

1 个答案:

答案 0 :(得分:1)

问题在于

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">[{"department":"Sales","mail":"jdoe@acme.com"}]</string>

实际上是带有JSON字符串的XML。要使代码正常工作,您需要简单地传回:

[{"department":"Sales","mail":"jdoe@acme.com"}]

自己。