generateGraph() {
...
jQuery.get('chart.PHP?month='+month+'&year='+year);
document.getElementById('graph').src = 'charts/'+month+'_'+year+'.png';
...
}
这被称为onChange.它基本上创建(如果不存在)或刷新(如果已经存在),PNG图像(使用上面的第一行)并且应该显示生成的图像(使用上面的第二行).
第一行有效,但第二行没有.意思是,生成图像,但第二行无法显示图像,除非重新加载页面,或者在页面加载之前已经存在的图像已经存在(意味着第一行只是“刷新”图像)
关于为什么会这样以及如何解决它的任何想法?
非常感谢您的帮助!
解决方法:
试试这个:
generateGraph() {
...
jQuery.get('chart.PHP?month='+month+'&year='+year, function() {
document.getElementById('graph').src = 'charts/'+month+'_'+year+'.png';
// as mentioned by others this also works and is in the jquery style:
// $("#graph").attr("src", "charts/" + month + "_" + year + ".png");
});
...
}
如果我理解了所有内容,则调用chart.PHP会在charts / month_year.png中生成图像.如果这是正确的,您的原始代码会在发送生成该图像的请求后立即发送图像请求.这没有足够的时间让服务器创建并将图像发布到charts / month_year.png,这就是为什么没有出现的原因.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。