【发布时间】:2014-08-05 16:40:01
【问题描述】:
我将用户名和密码作为请求参数发送到 AJAX 中的服务器并尝试显示响应消息。但无法显示响应消息。在提琴手中,它正在显示响应消息。但是在浏览器屏幕上它没有显示。请有人帮我找出我错的地方或需要改变任何东西.. 我是这样写的-
$(document).ready(function () {
$("#btnCity").click(function () {
$.ajax({
type: "POST",
url: "http://test.xyz.com/login",
crossDomain: true,
contentType: "application/json; charset=utf-8",
data: { username: "abc", password: "1234" },
dataType: "JSONP",
jsonpCallback: 'jsonCallback',
async: false,
success: function (resdata) {
alert(resdata);
},
error: function (result, status, err) {
alert(result.responseText);
alert(status.responseText);
alert(err.Message);
}
});
});
});
【问题讨论】:
-
resdata的值是多少? -
如果您在 console.log 中仅输出 resdata/err 本身会发生什么?你用的是什么浏览器?我怀疑这是 b/c 它返回 JSON,您需要调用 resdata.parse() 才能读取并显示它。怎么了?您是否在警报中收到任何内容,或者它从未出现过?尝试只提醒一些静态数据,如“blah”,看看你是否真的在没有它的情况下点击该代码,具体取决于该数据。
-
你有没有从错误函数(
err.Message)得到任何输出? -
@Alek-我没有从 resdata 得到任何东西。它直接进入错误部分。
-
您是在 XHR 处理本地文件,而不是实际由网络服务提供的文件(即使在 localhost 上)?因为出于安全考虑,浏览器通常会拒绝这样做。