我试图使用getJSON将用户名和密码提交到webservice并提醒"hi“。
这是我的密码:
$.getJSON(address+"?format=json&jsoncallback=?", {CustomerEmail: email, Password: password},
function(){
alert("hi");
});
http报头会提交一条200条消息,所以应该是可以的,但是它没有输入函数,有人知道为什么吗?
发布于 2010-07-28 09:06:57
页面是否位于同一台服务器上?很可能你违反了同源政策。
您可以使用JSONP,但是.getJSON()
希望参数名为callback
而不是jsoncallback
JSONP 如果URL包含字符串"callback=?“在URL中,请求被视为JSONP。有关详细信息,请参阅
$.ajax()
中对jsonp数据类型的讨论。
因此,要使它在您的情况下工作,您可以尝试使用$.ajax()
$.ajax({
url: address+"?format=json",
data: {CustomerEmail: email, Password: password},
dataType: "jsonp",
jsonp: "jsoncallback",
success: function(data) {
alert("hi");
}
});
发布于 2010-07-28 09:09:47
检查收到的JSON数据是否有效。特别是,所有字符串(即使是在属性名称中)都是正确的“引号”。
来自jQuery文档:
重要:在JSON1.4中,如果JSON文件包含语法错误,请求通常会以静默方式失败。为此,避免频繁手工编辑JSON数据。JSON是一种数据交换格式,其语法规则比JavaScript的对象文字表示法更严格。例如,所有用JSON表示的字符串,无论它们是属性值还是值,都必须用双引号括起来。有关JSON格式的详细信息,请参阅http://json.org/。
https://stackoverflow.com/questions/3351321
复制相似问题