jQuery ajax - 返回空白响应

时间:2010-11-15 15:26:59

标签: ajax jquery

我正在尝试使用jQuery ajax从数据库中获取一些值,然后将它们返回到数组中。

之前我曾多次使用相同的代码,但这次没有回复任何回复。虽然帖子值是我期望的正确值。这是我正在使用的javascript代码:

$.ajax({ url: '/BlogArchive.asmx/ChangePost'
                    , type: 'POST'
                    , contentType: 'application/json; charset=utf-8'
                    , data: '{FileName:"' + FileName + '"}'
                    , dataType: 'json'
                    , success: function (data) 
                    {
                        var arrayList = data.d;

                        var BlogPostTitle = $(".BlogPostTitle")[0];
                        var BlogPostDate = $(".BlogPostDate")[0];
                        var BlogPostContent = $(".BlogPostContent")[0];

                        $(BlogPostTitle).html(arrayList[0]);
                        $(BlogPostDate).html(arrayList[1]);
                        $(BlogPostContent).html(arrayList[2]);

                    }
//                    , error: function (XMLHttpRequest, textStatus, errorThrown)
//                    {
//                        //There was an error
//                        alert('dfd');
//                    }
            });

我收到的唯一一个javascript错误是数据为空,我期望这是因为响应是空白的。

似乎我从我的javascript调用的web方法的名称甚至没有被读取,因为如果我将'ChangePost'更改为'ChangePost1',它仍会返回空白响应,尽管我希望一条错误消息,指出无法找到Web方法。

似乎它确实认识到BlogArchive.asmx Web服务存在,因为如果我放置了会在VB代码中创建错误的内容,则错误会显示为响应。

我确信这一定是简单的,我做错了。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

, data: '{FileName:"' + FileName + '"}'

似乎很奇怪。你可能意味着:

, data: {FileName: FileName}

(或'FileName=' + FileName

此外,您是否通过FireBug或类似方法检查了请求(和响应)?

答案 1 :(得分:0)

您应该尝试使用带有最小参数的jQuery getJSON

另一件事,当您使用JSON和jQuery时,如果答案数据不正确 (就像起始JSON字符串之前/之后的空格一样)可能会导致空白答案 jQuery的。

确保使用传统的AJAX和jQuery,你的答案数据是正确的。