我正在尝试使用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代码中创建错误的内容,则错误会显示为响应。
我确信这一定是简单的,我做错了。任何帮助将不胜感激。
答案 0 :(得分:0)
, data: '{FileName:"' + FileName + '"}'
似乎很奇怪。你可能意味着:
, data: {FileName: FileName}
(或'FileName=' + FileName
)
此外,您是否通过FireBug或类似方法检查了请求(和响应)?
答案 1 :(得分:0)
您应该尝试使用带有最小参数的jQuery getJSON。
另一件事,当您使用JSON和jQuery时,如果答案数据不正确 (就像起始JSON字符串之前/之后的空格一样)可能会导致空白答案 jQuery的。
确保使用传统的AJAX和jQuery,你的答案数据是正确的。