如何通过jQuery将span标记中的文本添加到data-attr?

如何将span标记中的文本添加到data-attr?

例:
我有这个代码

Iconiconsymbol

我想将iconsymbol添加到相同元素的data-attr =“iconsymbol”,如:

 

Iconiconsymbol

是的,它将与所有具有title =“icon”的元素一起使用

  $( 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'); }); 

演示