Ajax用图像替换文本
-
04-07-2019 - |
题
我已将以下mootools脚本放在一起
window.addEvent('domready', function() {
var shouts = "timed.php";
var log = $('log_res');
function updateData (url,target)
{
new Ajax(url,{
method: 'get',
update: $(target),
onComplete: function() {
log.removeClass('ajax-loading');} }).request();
log.empty().addClass('ajax-loading');
}
var update = function(){ updateData ( shouts, 'log_res' ); };
update(); // call it immediately
update.periodical(10000); // and then periodically
});
继承人html
<div id="AJAX">
<h3>Ajax Response</h3>
<div id="log_res">exercise</div>
</div>
使用moo 1.1。
以上工作正常,页面加载然后ajax请求踢在div id中log_res有一个ajax-load类,同时它的更新,当它完成时,div中的文本练习被替换为ajax返回的任何内容( YIPPEE)。但我想将一些自定义HTML放入页面正在加载的div WHILST,因为ajax-loading类不足以包含信息,我还想将一个spinny闪存放入div中,而ajax请求正在检索信息。 希望有意义!
解决方案
使用MooTools 1.2,可按要求运行:
function updateData (url, target)
{
var target = $(target);
target.empty().addClass('ajax-loading');
target.innerHTML = "Loading...";
new Request({
url: url,
method: 'get',
onComplete: function(responseText) {
target.removeClass('ajax-loading');
target.innerHTML = responseText;
}
}).send();
}
既然你没有乐趣并且使用MooTools 1.1,我必须挖一点......实际上,我使用几乎相同的设置工作(注意我使用 target
而不是< code> log ,它是在此函数范围之外定义的):
function updateData (url, target)
{
var target = $(target);
target.empty().addClass('ajax-loading');
target.innerHTML = "Loading...";
new Ajax(url, {
method: 'get',
update: target,
onComplete: function() {
target.removeClass('ajax-loading');
}
}).request();
}
其他提示
你能不能做这样的事情:
function updateData (url, target)
{
var target = $(target);
target.innerHTML = 'Please wait...';
//and the rest of the function
}
不隶属于 StackOverflow