我的代码$j.getJSON("http://localhost:8080/WWTestHarnessWEB/ReadersToolkitFinalController.htm?jsoncallback=?", {'uID': 1}, function(data){alert(data);});
我要返回的json看起来像以下({"positiveCount":"0","negativeCount":"999"})
但是我的警报从未开始。
知道我需要做些什么才能确保它能够正常工作?
问候 达明
答案 0 :(得分:2)
我相信如果你为回调查询字符串参数使用的名称不同于callback
(看起来你正在使用jsoncallback
),你必须告诉jQuery;请参阅$.ajax
电话上的选项对象中的jsonp
参数。这意味着您必须使用ajax
代替getJSON
,但这很容易。
E.g:
$.ajax({
url: "http://localhost:8080/WWTestHarnessWEB/ReadersToolkitFinalController.htm?jsoncallback=?",
dataType: "json",
jsonp: "jsoncallback",
data: {'uID': 1},
success: function(data){alert(data);}
});
我不确定你是否需要(或应该)包含“jsoncallback =?”在你自己的URL或让jQuery把它放入;快速实验应该告诉你。
答案 1 :(得分:1)
试试这个:
$j.getJSON(
"http://localhost:8080/WWTestHarnessWEB/ReadersToolkitFinalController.htmjsoncallback=?",
{'uID': 1},
function(data, status){
alert(status);
});
这输出是什么?
答案 2 :(得分:1)
您的服务器代码是否真的服从jsoncallback
参数?如果我理解正确,那你就回来了
({"positiveCount":"0","negativeCount":"999"})
而JSONP中的P表示您需要返回
callback1234({"positiveCount":"0","negativeCount":"999"})
其中callback1234
是jsoncallback
参数的值。 (尽管URL显示为jsoncallback=?
,但JQuery特别解释了这一点,并用唯一生成的字符串替换?
。)
答案 3 :(得分:0)
欢呼各位回应。
事实证明,它非常挑剔,并且通过应用你们向我展示的工作点点滴滴
这里现在是我的jquery代码$j.getJSON(
"http://localhost:8080/WWTestHarnessWEB/ReadersToolkitFinalController.htm?jsoncallback=?",
{'uID': 1},
function(data, status){
if (status != 'success')
{
alert("Status is: " + status);
}
var positiveCount = data.positiveCount;
var negativeCount = data.negativeCount;
$j('td[id*="posiiveVoteId"]').html(getCorrectCountString(positiveCount));
$j('td[id*="negativeVoteId"]').html(getCorrectCountString(negativeCount));
});
我的json响应如下:ParamsHeadersPostPutResponseCacheHTMLJSON 响应标题来源 服务器Apache-Coyote / 1.1 Content-Type application / json; charset = ISO-8859-1 内容 - 语言en-US 内容长度80 2010年5月26日星期三格林尼治标准时间16:38:43 请求Headersview源 主持localhost:8080 User-Agent Mozilla / 5.0(Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3)Gecko / 20100401 Firefox / 3.6.3 接受text / javascript,application / javascript, / Accept-Language en-us,en; q = 0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8; q = 0.7,*; q = 0.7 保持活力115 连接保持活着 Content-Type application / x-www-form-urlencoded X-Requested-With XMLHttpRequest 参考者http://localhost:8080/WWTestHarnessWEB/jsp/ReadersToolkit/Json.jsp Cookie JSESSIONID = 93FDA3BD0D2450D7FA4BD9A76C388F8A
jsonp1274891923240({ “positiveCount”: “0”, “negativeCount”: “999”})`
再次感谢 达明