【发布时间】:2016-03-05 21:16:13
【问题描述】:
我正在进行的 Ajax 调用发生了一些奇怪的事情,我无法弄清楚它为什么会发生,也许有人可以解释一下。
这是电话
$.ajax({type:'POST', url: apiURL+"misc/"+cola, headers: {'apikey':localStorage.apiKey}, dataType: 'html', success:function(data) {
$("#pagina").html(data);
postCarga("pagina");
}, error: function() {
sinConexion();
}});
现在,这应该获取从 Ajax 接收到的“数据”并用它填充 div#pagina,但 div 保持为空。
这是奇怪的部分,我调用了 console.log(data) 来查看数据是否通过,然后它不仅会记录到控制台,还会用返回的数据正确填充 div#pagina。
如果我只是尝试直接填充它,则 div 保持为空,但如果我事先做任何事情(甚至像 var xxx = data; 之类的东西),它就会正确填充。
我通过将填充函数移动到 postCarga 中来解决这个问题,所以我的最终代码如下所示:
$.ajax({type:'POST', url: apiURL+"misc/"+cola, headers: {'apikey':localStorage.apiKey}, dataType: 'html', success:function(data) {
postCarga(data,"pagina");
}, error: function() {
sinConexion();
}});
,但这感觉很奇怪。
// 编辑 // 这是整个函数
function postCarga(datos,que) {
$("#"+que).html(datos).animate({top:'0%'},350,'ease-in',function() { $("#cargando").css("display","none"); });
}
,最初,它所做的只是动画然后隐藏加载器,html(datos) 是我修复的一部分。
【问题讨论】:
-
您可以在您的列表中添加
postCarga的相关部分吗?只是填充 div 的行。谢谢。
标签: javascript ajax cordova zepto