#jquery #ajax
#jquery #ajax
Вопрос:
У меня есть следующий ответ ajax, который генерируется сценарием на стороне сервера:
<div class="parent"><img class="icon" src="../images/icons/inv_boots.PNG"/></div>
<div class="item-title3">Testname</div>
<div class="item-level">20</div>
На данный момент я сохраняю тег изображения в переменной «значок» следующим образом;
let icon = $content.siblings('[class^=parent]').html()
Теперь я хочу изменить имя класса изображения <img class="icon"
на «icon22».
Пока это мой код:
<script language="javascript">
jQuery(function($) {
$('*[data-id]').each(function() {
let $tooltip = $(this);
let id = $tooltip.attr("data-id");
$.ajax({
url: "/datenbank/itemscript.php",
type: "GET",
data: {
"var": id
}
}).then(function(data) {
let $content = $(data);
let title = $content.siblings('[class^=item-title]').text()
let icon = $content.siblings('[class^=parent]').html()
var item_title = $content.siblings('div[class*="item-title"]');
console.log(item_title);
var ClassName = '';
var classes = item_title.attr('class').split(/(s )/);
$.each(classes , function(i , v){
v = v.trim();
if(v.indexOf('item-title') > -1){
ClassName = v;
}
});
$tooltip.tooltip({
tooltipClass: "test",
content: data,
position: {
my: "left 153 top 20",
collision: "flipfit"
}
});
$("<div class="" ClassName "">" icon "" title "</div>").appendTo($tooltip);
});
});
});
</script>
<a data-id="12555"></a>
Комментарии:
1. Привет, ты можешь попробовать
$content.siblings('[class^=parent]').find("img").addClass("icon22").removeClass("icon")
Ответ №1:
Учитывая, что $data
это объект jQuery, содержащий ответ, вы можете использовать find()
для извлечения img
элемента внутри него, а затем toggleClass()
:
$content.find('img.icon').toggleClass('icon icon22');