如何解决如果图像不存在,如何使用其他图像?使用'#id'attr“ src”
我是一名C程序员,试图修复一些我未创建的代码中的错误。 单击表格的一行时,它会将图像设置为ID为“正方形”
$('#square').attr("src","image/"+row.id+"_2_1.jpg");
但是,有些图像被命名为_3_1.jpg(不受我控制),因此我想检查_2_图像是否存在,如果不存在,请加载_3_变体。
使用“ onerror”似乎不起作用,并且插入IF语句会阻止整个表的加载。
这是整个功能:
$('#table').on('click-row.bs.table',function (e,row,$element) {
if(config["homing_tool"] == "1"){
$('#detail').show();
$('#detail1').hide();
$('#detail2').hide();
$('.homing').hide();
}else{
$('#detail').show();
$('#detail1').show();
$('#detail2').show();
$('#iris').attr("src","image/"+row.id+"_0_1.jpg");
$('#square').attr("src","image/"+row.id+"_2_1.jpg");
};
var x;
for (x in row) {
if(x == "type"){
$('#'+x).html(spec[row[x]]["name"]);
}else{
$('#'+x).html(row[x]);
}
}
});
编辑: 感谢您的建议! 据我所知,所有数据都是本地数据,因此无需连接到服务器并使用HTTP请求。 我明天将尝试其他建议。我必须远程访问的PC比我早6个小时,并且它们一天都处于关闭状态。
解决方法
通过一些调试和反复试验,我能够使Check if image exists before loading适应我的需要。
谢谢!
为后代,我使用:
function getSquareURL(rowid)
{
var image = new Image();
image.onload = function()
{
$('#square').attr("src","image/"+rowid+"_2_1.jpg");
return true;
}
image.onerror = function()
{
$('#square').attr("src","image/"+rowid+"_3_1.jpg");
return false;
}
image.src = "image/"+rowid+"_2_1.jpg";
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。