How do you hide an image tag based on an ajax response?
What is the correct jquery statement to replace the "//Needed magic" comments below so that the image tags are hidden or unhidden based on the AJAX responses?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>JQuery</title>
<style type="text/css">
.isSolvedImage{
width: 68px;
height: 47px;
border: 1px solid red;
cursor: pointer;
}
</style>
<script src="_js/jquery-1.4.2.min.js" type="text/javascript"> </script>
</head>
<body>
<div id='true1.txt' class='isSolvedImage'>
<img src="_images/solved.png">
</div>
<div id='false1.txt' class='isSolvedImage'>
<img src="_images/solved.png">
</div>
<div id='true2.txt' class='isSolvedImage'>
<img src="_images/solved.png">
</div>
<div id='false2.txt' class='isSolvedImage'>
<img src="_images/solved.png">
</div>
<script type="text/javascript">
$(function(){
var getDivs = 0;
//iterate div with class isSolvedImage
$("div.isSolvedImage").each(function() {
alert('div id--'+this.id);
// send ajax requrest
$.get(this.id, function(data) {
// check if ajax response is 1
alert('div id--'+this.url+'--ajax response--'+data);
if(data == 1){
alert('div id--'+this.url+'--Unhiding image--');
//Needed magic
//Show image if data==1
}
else{
alert('div id开发者_开发技巧--'+this.url+'--Hiding image--');
//Needed magic
//Hide image if data!=1
}
});
});
});
</script>
</body>
</html>
$('#imageId').hide(); //to hide...
$('#imageId').show(); //to show...
or
$('img').hide(); //to hide all image...
$('img').show(); //to show all image...
$(function(){
var getDivs = 0;
//iterate div with class isSolvedImage
$("div.isSolvedImage").each(function() {
alert('div id--'+this.id);
var img = $(this).find('img');
// send ajax requrest
$.get(this.id, function(data) {
// check if ajax response is 1
alert('div id--'+this.url+'--ajax response--'+data);
if(data == 1){
alert('div id--'+this.url+'--Unhiding image--');
//Needed magic
//Show image if data==1
img.show();
}
else{
alert('div id--'+this.url+'--Hiding image--');
//Needed magic
//Hide image if data!=1
img.hide();
}
});
});
});
$(this).find('img').show();
or
$(this).find('img').hide();
$('#true1.txt img').hide();
Where true1.txt is the ID of the div containing the image you wish to hide.
I think the easiest method is $('.target').hide(); and $('.target').show();
you can read more here :
.hide()
.show()
EDIT : I guess should have done refresh before answering.
$('div[id="' + $this.url + '"]').show();
and
$('div[id="' + $this.url + '"]').hide();
精彩评论