Как добавить текст из тега span в data-attr с помощью jQuery?

Как добавить текст из тега span в data-attr?

Пример:
У меня есть этот код

Iconiconsymbol

И я хочу добавить iconsymbol в data-attr = “iconsymbol” того же элемента, что и:

 

Iconiconsymbol

Да, и это будет со всеми элементами, которые имеют заголовок = “значок”

  $( document ).ready(function() { $("[title*='icon']").attr('data-attr',function(){ // I don't know }).removeAttr('title'); });  

Вы знаете, как это сделать? Поэтому я знаю, что это очень просто, но я новичок в jquery, и мне нужно помочь.
Надеюсь, ты понял мой вопрос.

Вот пример, который должен сработать для вас. Вероятно, есть несколько способов вытащить это, но, надеюсь, вы начнете. См. Прилагаемый JSFiddle, чтобы увидеть этот пример в действии

 $(function() { $('[title*="icon"] span').each(function(){ $(this).parent().closest('div').attr('data-attr', $(this).text()) }); }); 

Вот еще один способ, которым вы можете это сделать.

 $('[title*="icon"]').each(function(){ $(this).attr('data-attr', $(this).children().closest('span').text()); }); 

Пример JSFiddle

Ваш

должен иметь атрибут title="icon"

Вы используете обратный вызов для функции attr() , поэтому возвращайте значение, которое вам нужно установить внутри функции, используя .text() .

 $(document).ready(function () { $("[title='icon']").attr('data-attr', function () { return $(this).find('span').text(); }).removeAttr('title'); }); 

демонстрация