Имею следующий код..
<img src="" id="image1" >
<img src="www" id="image1" >
<img src="" id="image2" >
<img src="www" id="image2" >
<div id="imagesrc"></div>
Как я могу скрыть div
с id
(#imagesrc)
когда #image1
имеет src=""
, и покажите мой div
(#imagesrc
), когда #image1
есть src !=""
?
пытаться
$(document).ready(function () {
if ($("#image1").attr("src") == "") {
$("#imagesrc").hide();
}
else {
$("#imagesrc").show();
}
});
Обновить
$("#image1").change(function () {
var imgControlName = "#imagesrc";
readURL(this, imgControlName);
if (jQuery("#preview").attr("src") == "") {
jQuery("#remove").hide();
} else {
jQuery("#remove").show();
}
});
CSS чистый, без JavaScript и автоматически реагирует на изменения.
Конечно, он предполагает, что ваша разметка действительно выглядит так.
#image1[src=""] ~ #imagesrc {
display: none;
}
//включить jquery.js
<script type="text/javascript">
$(document).ready(function(){
if($('#image1').attr('src')==""){
$('#imagesrc').hide(); //you can also give $('#imagesrc').css('display','none');
}
});
</script>
Также не помещайте одинаковые "id" в более чем 1 элемент. Вместо этого используйте класс.
Надеюсь, у вас есть идея...
Попробуйте любой из подходов.
if($("#image1").attr('src') != ''){
$('#imagesrc').hide();
}else{
$('#imagesrc').show();
}
или
$('#imagesrc').toggle($("#image1").attr('src') != '');
Попробуйте этот полный код
вы можете использовать attr
для вызова любого значения attribute
элемента html или для установки значения attribute
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
</head>
<body>
<img src="" id="image1" >
<img src="www" id="image1" >
<img src="" id="image2" >
<img src="www" id="image2" >
<div id="imagesrc"></div>
<script>
$( document ).ready(function() {
if ($("#image1").attr("src") == "")
{
$("#imagesrc").hide();
}
else
{
$("#imagesrc").show();
}
});
</script>
</body>
</html>
попробуй это
$(function(){ //ready function
$('#imagesrc').show(); //show the imagesrc div.you can avoid this, if imagesrc div is already shown
if($('#image1').attr('src')==""){ //check for condition
$('#imagesrc').hide(); //if true hide it
}
});
#imagesrc
не может быть показан и скрыт одновременно. Или это просто примеры, и есть только один элемент с одинаковым идентификатором, и вы просто продублировали его, чтобы продемонстрировать, что элемент может иметь разные значения дляsrc
?$('#imagesrc').toggle($('#image1[src!='']').length > 0)
.