最近我开始开发一个网站。我没有很多网络开发经验,所以我希望我的问题不是太基础。
我有两个Ajax函数。一个是获取密钥并执行某些操作,另一个是为所有密钥执行相同操作。
function doSomething(key) {
$.ajax({
url: '/control/doSomething?key=' + key,
type: "GET",
success: function (data, textStatus, jqXHR) {
$("#doSomething").html(data)
$("#doSomething").show()
},
error: function (jqXHR, textStatus, errorThrown) {
alert('error')
}
});
}
function doAll() {
$.ajax({
url: '/control/getAll',
type: "GET",
success: function (data, textStatus, jqXHR) {
jsonResult = data['result']
for (key in jsonResult) {
doSomething(key)
}
},
error: function (jqXHR, textStatus, errorThrown) {
alert('error')
}
});
}
/control/doSomething/key
的预期API结果如下所示:
{
"host" : "my-pc",
"ts" : "Tue May 19 15:47:01 2015",
"status" : "Ok"
}
这些功能正常。但是,我在从API打印结果时遇到问题。我正在尝试打印输出,但没有任何反应。我刚拿到一个空的蓝色气球。
<div style="width: 450px;font-size: 14px;margin-top: 50px;display:None" id="doSomething" class="tr-bg tr-internal-frame" onclick='$("#doSomething").toggle()'>
请告知。
答案 0 :(得分:2)
据我所知,你应该:
dataType: 'json'
jsonResult = data['result']
应为jsonResult = data
(不需要jsonResult
变量?)$("#doSomething").html(data)
表示您正在尝试在HTML元素中推送JSON对象。因此,您至少应该$("#doSomething").html(JSON.stringify(data))
,或者更多地详细说明您的数据。