【发布时间】:2016-06-08 07:12:16
【问题描述】:
我有一个弹出框,我想通过 ajax 填充内容。
所以我有这个:
$('.openMessagePopover').popover({
html: true,
content: function() {
$threadId = $(this).data('id');
return getContent($threadId);
}
});
和功能:
function getContent($id)
{
$thisData = "";
$.ajax({
url: $threadURL +$id,
method: 'GET',
success: function (data) {
//alert(data);
$thisData = data;
},
error: function () {
//alert("error");
$thisData = "No message found";
},
complete:function()
{
alert($thisData);
return $thisData;
}
});
}
警报(数据);显示来自 URL 的正确数据,这样就成功了。
但它不会在弹出窗口中显示它。关于我所缺少的任何想法都会很棒。
我真正想要的是在加载 ajax 内容时在弹出内容中显示加载 gif。
这让我非常困惑。因为如果我将 getContent 函数更改为:
function getContent($id)
{
return "<img src='/img/ajax-loader3.gif' />";
});
有效,加载 gif 出现在弹出框内容中......但我不明白为什么之前的 ajax 调用没有?
我查看了 SO 上提供的类似问题,但没有找到适合我的解决方案。前段时间似乎也有人问过很多类似的问题,这让我想知道我是否没有错过一些目前可用的非常明显的新功能!
【问题讨论】:
标签: javascript jquery ajax twitter-bootstrap