Проверьте путь к изображению в JavaScript - PullRequest
1 голос
/ 08 октября 2010

У меня есть изображение вроде: img src = "" class = 'listPartialLoader' alt = 'loading' Я присваиваю значение 'src' данным из вызова ajaxИногда, если изображение не найдено, я хочу добавить путь к изображению по умолчанию, такой как «Images / default.jpg».Но как я могу проверить, существует ли изображение или нет, используя JavaScript?(В основном я хочу, если изображение не найдено, добавить изображение по умолчанию)

Ответы [ 3 ]

2 голосов
/ 08 октября 2010

Вы должны быть в состоянии проверить, существует ли изображение с событиями onerror и onload.

var myImg = new Image;
myImg.src = 'path/to/image';

myImg.onerror = function(){
    console.log("Error!");
}

myImg.onload = function(){
    console.log('Loaded!');
}
1 голос
/ 08 октября 2010

Когда вы извлекаете значение для свойства src во время вызова ajax на сервер, почему бы не проверить, существует ли файл?

string src = GetSrc(); //whatever you need to do

if(System.IO.File.Exists(HttpContext.Current.Server.MapPath(src)))
{
    return src;
}
else
{
    return "path/default.jpg");
}
1 голос
/ 08 октября 2010

если изображение находится в том же домене вашего скрипта, просто выберите путь к изображению (перед тем, как назначить его элементу изображения) и сделайте простой HEAD-запрос ajax к этому пути (например, "images / default.jpg). Если серверстатус 304 или 200, изображение существует

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...