Display Default Image when No Image Found

Here’s a solution to display a Default Image in the Image control, when the original image is not available. The same solution can be applied to both ASP.NET Image Controls as well as HTML image controls

ASP.NET Image Control

<asp:Image ID="imgProd" runat="server"
onerror="this.onload = null; this.src='ImageurlORAnyImageHere.jpg';"/>

HTML Image Control

<img id="imgProd1" src="someimage.gif"
onerror="this.onerror=null; this.src='ImageurlORAnyImageHere.jpg';" />

We are using the onerror event of the image tag, which triggers if there is an error while loading an image. If an error occurs, we display 'ImageurlORAnyImageHere.jpg' as the default image. You can even add an image url.

If you are looking out to apply the same technique while loading images in an ASP.NET GridView, check my article Loading Images Asynchronously Inside an ASP.NET GridView

6 comments:

  1. Searching for this solution all across the internet and nobody knew how to do it and you in, ONE SIMPLE LINE, solve al my problems THANK ONE MILLION

    ReplyDelete
  2. Sir, What is the purpose of "this.onerror=null;"?

    ReplyDelete
  3. onerror is an image event. Here we are setting it to null so that the browsers don't repeatedly fire the error event.

    ReplyDelete