Javascript图像超时
您好,我的代码有问题,几秒钟内无法显示加载的图像,而POST代码正在进入数据库并返回要显示的信息Javascript图像超时,javascript,image,timeout,Javascript,Image,Timeout,您好,我的代码有问题,几秒钟内无法显示加载的图像,而POST代码正在进入数据库并返回要显示的信息 $(“#投票表决”)。单击(函数(){ var answer=$(“input.panswer:checked”).val(); var p#u id=$(“#p#id”).val(); $(“#轮询加载”).html(“”); $.ajax({ 类型:“POST”, 数据:“action=poll\u vote&p\u id=“+p\u id+”&answer=“+answer+”&module
$(“#投票表决”)。单击(函数(){
var answer=$(“input.panswer:checked”).val();
var p#u id=$(“#p#id”).val();
$(“#轮询加载”).html(“”);
$.ajax({
类型:“POST”,
数据:“action=poll\u vote&p\u id=“+p\u id+”&answer=“+answer+”&module=“+module+”,
数据类型:“html”,
url:“/ajax.php”,
成功:功能(数据)
{
$(“#民意测验内容”).html(数据);
}
});
});代码>如果您想要创建一个延迟,以便加载动画显示(我相信这是…嗯,不同的,我会这样做…)
:
现在,在您的代码中,函数可以包含ajax调用:
$("#poll_vote").click(function(){
var answer = $("input.panswer:checked").val();
var p_id = $("#p_id").val();
$("#poll_load").html("<tr><td align='center'><img src='/images/ajax/ajax4.gif'/></td></tr>");
setTimeout(function(){
$.ajax({
type: "POST",
data: "action=poll_vote&p_id="+p_id+"&answer="+answer+"&module="+module+"",
dataType: 'html',
url: "/ajax.php",
success: function(data)
{
$("#poll_content").html(data);
}
});
}, 3000);
});
$(“#投票表决”)。单击(函数(){
var answer=$(“input.panswer:checked”).val();
var p#u id=$(“#p#id”).val();
$(“#轮询加载”).html(“”);
setTimeout(函数(){
$.ajax({
类型:“POST”,
数据:“action=poll\u vote&p\u id=“+p\u id+”&answer=“+answer+”&module=“+module+”,
数据类型:“html”,
url:“/ajax.php”,
成功:功能(数据)
{
$(“#民意测验内容”).html(数据);
}
});
}, 3000);
});
或者在成功功能中,我认为更好:
$("#poll_vote").click(function(){
var answer = $("input.panswer:checked").val();
var p_id = $("#p_id").val();
$("#poll_load").html("<tr><td align='center'><img src='/images/ajax/ajax4.gif'/></td></tr>");
$.ajax({
type: "POST",
data: "action=poll_vote&p_id="+p_id+"&answer="+answer+"&module="+module+"",
dataType: 'html',
url: "/ajax.php",
success: function(data)
{
setTimeout(function(){$("#poll_content").html(data);}, 3000, data);
}
});
});
$(“#投票表决”)。单击(函数(){
var answer=$(“input.panswer:checked”).val();
var p#u id=$(“#p#id”).val();
$(“#轮询加载”).html(“”);
$.ajax({
类型:“POST”,
数据:“action=poll\u vote&p\u id=“+p\u id+”&answer=“+answer+”&module=“+module+”,
数据类型:“html”,
url:“/ajax.php”,
成功:功能(数据)
{
setTimeout(function(){$(“#poll_content”).html(data);},3000,data);
}
});
});
我没有测试它,所以检查在第二种情况下是否可以在回调函数中看到数据(我认为应该是…)
希望它能有所帮助。您必须像准备好的那样在$.ajax之前插入加载覆盖。并在成功块上删除它。在ajax调用之后,您是否在dom中看到了您的“tr”..?您能给我举个例子吗?我需要让该图像显示大约3秒,现在显示大约0,2秒。它工作正常,但仍然存在一个问题,即自动刷新后,在用f5刷新后,它不会显示投票结果。代码给我一个id=undefinedsorry正确的调用应该是:setTimeout(function(){$(“#poll_content”).html(data);},3000,data);正在向它传递数据。。。。
$("#poll_vote").click(function(){
var answer = $("input.panswer:checked").val();
var p_id = $("#p_id").val();
$("#poll_load").html("<tr><td align='center'><img src='/images/ajax/ajax4.gif'/></td></tr>");
$.ajax({
type: "POST",
data: "action=poll_vote&p_id="+p_id+"&answer="+answer+"&module="+module+"",
dataType: 'html',
url: "/ajax.php",
success: function(data)
{
setTimeout(function(){$("#poll_content").html(data);}, 3000, data);
}
});
});