我正在学习 jQuery,并且有一个我从 Ajax 调用中获得的星级酒店列表。我想将文本中的评分更改为带有星星的图像,但我似乎无法做到这一点。
如果我对每个运行 if 语句,它只返回并运行列表中第一个的值,即 4.5 到结果列表中的其余部分,因此所有结果都显示 4.5 而不是它们各自的星级
谢谢
var jqxhr = $.ajax({
url: "https://api.eancdn.com/ean-services/rs/hotel/v3/list?cid=55505&minorRev=99&apiKey=cbrzfta369qwyrm9t5b8y8kf&locale=en_AU&city=Sydney&stateProvinceCode=NW&countryCode=AU&_type=json",
dataType: "jsonp",
callback: "hotelList"
})
.done(function(data) {
var StrHotelListResponse = data.HotelListResponse.HotelList.HotelSummary;
$.each(StrHotelListResponse, function(index, value) {
$('.target').append(value.name + '<span class="rating" data-exprating="'+value.hotelRating+'"></span><span>'+value.hotelRating+'</span><br />')
});
if($('.rating').data('exprating') == '1') {
$('.rating').html('<img src="img/star1.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '1.5'){
$('.rating').html('<img src="img/star1-5.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '2'){
$('.rating').html('<img src="img/star2.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '2.5'){
$('.rating').html('<img src="img/star2-5.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '3'){
$('.rating').html('<img src="img/star3.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '3.5'){
$('.rating').html('<img src="img/star3-5.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '4'){
$('.rating').html('<img src="img/star4.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '4.5'){
$('.rating').html('<img src="img/star4-5.gif" alt="Star rating" width="72" height="15"/>');
}
else if($('.rating').data('exprating') == '5'){
$('.rating').html('<img src="img/star5.gif" alt="Star rating" width="72" height="15"/>');
}
else{
$('.rating').html('<img src="img/starnr.gif" alt="Star rating" width="72" height="15"/>');
}
})
.fail(function() {
alert( "error" );
})
.always(function() {
//alert( "finished" );
});
jqxhr.always(function() {
//alert( "second finished" );
});
});