Javascript 使用一个错误两次

Javascript 使用一个错误两次,javascript,onerror,Javascript,Onerror,如果第一个OneRor不存在,有没有办法使用两次OneRor <img class="media-object img-responsive" src="/img/product/{{ product_type_slug }}/thumb/{{ image_thumb }}" alt="{{ name }}" onError=" this.onerror=null; this.src='/img/product/swatch/{{ image }}';"> 因此,如果原始图像不存在

如果第一个OneRor不存在,有没有办法使用两次OneRor

<img class="media-object img-responsive" src="/img/product/{{ product_type_slug }}/thumb/{{ image_thumb }}" alt="{{ name }}"
onError="
this.onerror=null;
this.src='/img/product/swatch/{{ image }}';">

因此,如果原始图像不存在,则显示样例url;如果原始图像不存在,则显示旧图像。

您可以使用javascript函数来处理这种情况

函数加载可选(元素,列表){
var image=新图像();
image.onload=函数(){
element.src=this.src;
}
image.onerror=函数(){
如果(列表长度){
装载备选方案(元素、列表);
}
}
//选择列表中的第一个url
image.src=list.shift();
}

似乎对我的动态src不起作用:/您的答案是正确的,但是对于静态src,它仍然只显示/img/product/{{product\u type\u slug}}}/thumb/{{image\u thumb}},这对于某些产品来说是缺失的,并且只是向浏览器显示一个损坏的图像,静态和动态之间没有区别,这只是一个图像源。您是否将备选方案放入了
数据备选方案
属性中?e、 g.
data alternative=“/img/product/swatch/{{image}”
?是的,我复制了你的,并将你的src替换到我的,我会继续尝试
src='/img/product/{{ product_type_slug }}/old/{{ image_thumb }}'