2012-02-22 2 views
2

В моем приложении (asp.net) У меня есть элемент управления изображением, который по умолчанию имеет пустой источник. Когда пользователь нажимает на миниатюру, в этом элементе управления изображения открывается щелчок. Дело в том, что изображения, которые можно просмотреть, загружаются пользователем, и по этой причине я не могу установить образ по умолчанию (потому что не обязательно, что изображение существует при загрузке страницы).if ... image with empty source (jQuery)

Проблема заключается в том, что при загрузке страницы изображение src пуст, отображается сообщение об сломанном изображении. При нажатии на миниатюру все работает нормально.

Одним из решений этого, с которым я столкнулся, является использование jQuery, чтобы проверить, имеет ли изображение пустой src, и если это так скрыть.

Ниже приведен код, который я написал для этого, но по какой-то причине ничего не происходит. Что может быть неправильным (код загружается, когда GET выполняется страницей)?

if ($("#fullSizeImage").attr(src="") == true) { 
    $("#fullSizeImage").hide(); 
} 
else { 
    $("#fullSizeImage").show(); 
} 

HTML:

<div id="fullImageArea"> 
    <img id="fullSizeImage" src="" /> 
</div> 

ответ

2

ваша проверка должна быть, как:

if ($("#fullSizeImage").attr('src') == "") { 

И это потому, что вы используете .attr() неправильный путь, по jQuery's documentation: вы можете использовать .attr() для следующие способы:

.attr(attributeName) 

Описание: Получить значение атрибута для первого элемента в наборе согласованных элементов.

Или

.attr(attributeName, value) 

Описание: Установите один или несколько атрибутов для набора совпавших элементов.

+0

А, это отлично работает. Благодаря! – holyredbeard

+0

Отлично! Я рад, что это помогло ... – DarkAjax

1
if (!$("#fullSizeImage").attr('src')) { 
    $("#fullSizeImage").hide(); 
} 
else { 
    $("#fullSizeImage").show(); 
} 
​ 

, пожалуйста, используйте приведенное выше.